AJAX Control Framework v2.0 - Beta 1

Rating: No reviews yet
Downloads: 5
Updated: Dec 1, 2010 by peanutbutterlou
Dev status: Planning Help Icon

Recommended Download

Source Code AJAXControlFramework_v2_Beta1_PreRelease.zip
source code, 4234K, uploaded Dec 1, 2010 - 5 downloads

Release Notes

This is a fairly stable build of the 1st beta for v2.0 of the AJAX Control Framework. Overall, the aim of v2.0 is to improve the extensibility and performance of the framework, while reducing it's footprint on both the client and server-side. With the introduction of a number of new features, the AJAX Control Framework is now easier to develop with, requiring far less code to create far more functional and extensible AJAX controls.

Alot of the effort put into this version went toward making the framework's features "just work" and better supporting the level of extensibility and componentization that this project idealizes (unlike v1.x, v2.0 will not require developers to implement the IAjaxControl interface to attach AJAX abilities to their custom controls; it better support multiple instances and elaborate nesting of AJAX Controls, while retaining the uniqueness of the individual instances of an AJAX Control; it makes the development experience on the client-side using JavaScript nearly identical to the OOP development experience on the server-side, making it so that the same code will be applied to every instance of that AJAX Control, and encapsulating all of the AJAX Control's JavaScript code within a class-like, OOP construct just like it would be on the server-side).


What's New

Fully Functional Features:

  • Evolved Client and Server-side Class Library - Refactored code that is far better organized and allows for far greater extensibility, that is also noticeably more powerful, robust and efficient.
  • New Client-side Syntax for Simulating Control-level Properties - A new syntax inspired by jQuery allows you to define, and reference by name, methods that simulate the "getter" and "setter" methods of server-side class properties.
  • AJAX Properties - Decorate properties in the code-behind of your custom controls so that you can reference them by name on the client-side. You can get and set the property values from JavaScript and have the actual property values be synced between the client and server-side during AJAX operations.
  • AJAX Child Controls - Decorating the class of your custom controls' code-behind with the new AjaxControlControls attribute allow the server controls of your choice be accessible by ID from your JavaScript.
  • "Out-of-Band" Processing - Load and operate on AJAX Controls in the context of their individual instances, without invoking the full life-cycle of any other controls (all the while, maintaining a Control that still works exactly as it would in a normal Postback context).

Partially Working Features

  • JavaScript Build Provider - Use C# or VB (in the form of code rendering, declaration, expression, or data binding blocks that are available in all ASP.NET markup) in your JavaScript. Developers can extend their Pages and User Controls with a companion .ascx.jsx or .aspx.jsx file that provides custom JavaScript code access to all inherited server-side members.

Still In The Works (but planned for release with v2.0)

  • StyleManager Control - Just like the ScriptManager control, but for stylesheet declarations and inline CSS rule declarations.
  • Enabling of ASP.NET Validators within UpdateRegions - ASP.NET Validators will work within seamlessly within all AJAX Controls.
  • Additional JavaScript Build Provider Enhancements - With the final v2.0 release, .ascx.jsx companion scripts and other scripts that are required by your custom controls, will be automatically rendered to and loaded by the browser for each instance of the control on the Page. Also, an option will be available to minify all static scripts at compile-time and an option to merge all scripts into a single script declaration at compile-time.
  • Eliminating the IAjaxControl Interface While Still Allowing AJAX Functionality to be Attachable to ALL Controls that derive from System.Web.UI.Control.