Microsoft "Atlas" Control Toolkit 1.0.60504.0

Version 1.0.60504.0

New controls (see sample pages on left):

  • Always Visible: Docks any panel to the browser edge so it remains visible all the time.
  • Drop Shadow: Adds attractive drop shadows to any control on the page!
  • Modal Popup: Shows styled modal UI without using HTML dialogs!
  • Rounded Corners: Rounds the corners of any control for a clean, professional look.

General Notes:

  • Significantly improved support for Apple's Safari web browser by fixing most issues (see known issues below)
  • Enabled strong-name signing for AtlasControlToolkit.dll
  • Added ID property to TargetPropertiesBase.  This allows behaviors to be accessed directly from script using the "$object('id')" statement.
  • Added GetUniqueID helper for building unique behavior IDs for behaviors that need ideas and are used in repeaters.
  • Changed XMLScript generation to bind to specific control types where possible. Old version always generated "<control id='controlId>" for all control types.  Now for known types (e.g. TextBox), "<textBox id='controlId'>" Will be generated, which allows access to Atlas control class (e.g. this.control is Sys.UI.TextBox instead of Sys.UI.Control).
  • CascadingDropDown can now call PageMethod as well as web services (Just leave the ServicePath property blank).
  • CascadingDropDown now has a "SelectedValue" property to predefine what's selected.  Note this should be the text representation of the value (not the text) that you want to select
  • CascadingDropDown's usage of web service callbacks has been optimized
  • Added support for virtual paths in control properties (properties that use URLs can now use the "~/File.htm" representation)
  • Added RequiredPropertyAttribute to simplify EnsureValid logic
  • Added RequiredScriptAttribute to simplify control sharing, as well as the ability to specify another extender type in the attribute.  Doing so will cause the referenced extender's scripts to be loaded before the scripts for the given control.  This allows usage of other extenders classes in a custom extender's behavior.
  • Improved PopupControl user interaction behavior - now dismisses on click instead of mouse leave
  • Improved CollapsiblePanel behavior, added ImageControlID property for expand/collapse images.  Will now properly handle initially hidden panels (they need overflow set to hidden) so they don't initially show.
  • Added Common.js file for sharing common control/script code.  To reference this code, add [RequiredScripts(typeof(CommonToolkitScripts)] to your extender type.
  • Changed from overloading DisplayName to using dedicated ClientPropertyNameAttribute for matching property names on TargetPropertiesBase to the client name
  • Modified sample pages to use CollapsiblePanel for section
  • Miscellaneous fixes and incorporation of user feedback to all controls

Breaking Changes

  • RequiredScripts property on ExtenderControlBase has been deprecated.  Move to RequiredScriptsAttribute before next refresh.
  • ToggleButton's image properties are now typed as string instead of System.Uri
  • DisplayNameAttribute no longer modifies the name for client properties.  This functionality has been moved to the ClientPropertyNameAttribute
  • String properties no longer default to null if empty, but rather "".
  • For Safari compat, type prefix names must be all lower-case.  The ExtenderBaseControl now enforces this.  If your components stop working when you install this release, find the "Sys.TypeDescriptor.addType" call in your JS behavior file and change the first parameter value to be only lower case characters.

Known Issues

  • Since UpdatePanels don't work on Safari, PopupControl won't be able to populate the textboxes upon closing.
  • Using behaviors directly through script.  Adding the ID property to the behaviors made them very easy to access directly through script.  If you are using the behaviors directly from script, changing properties after they have been initialized.
  • If you are writing a custom behavior that binds to a DropDownList, you may run into issues.  The workaround is to override GetClientClassForControl on your extender class and return "control".  Note this will prevent you from accessing Sys.UI.Select features on the control class that is attached to your behavior.
  • On Internet Explorer, using the DropShadow control you may see a brief flash when it is reparenting items inside of the target panel.
  • On Safari, tabbing out of a textbox doesn't appear to cause an "onblur" event.  This interferes with TextBoxWatermark replacing the watermark if the user tabs through.  Works fine with the mouse.
  • TextBoxWatermark watermark isn't cleared before submit on Safari
  • PopupControl doesn't dismiss reliably on Safari when the mouse is clicked outside the popup.


  • Initial release!
  • New controls:
    • CascadingDropDown: Easily link drop downs, complete with asynchronous population and no postbacks!
    • CollapsiblePanel: This extender allows panels on your page to collapse and expand with no code.
    • ConfirmButton: This extender adds a confirm dialog to any Button, LinkButton, or ImageButton control.
    • DragPanel: Makes any panel into an object that you can drag around the page.
    • HoverMenu: Allows UI to pop up next to a control when the user hovers over it.
    • PopupControl: This extender turns any panel into a popup.
    • ReorderList: This control is a full-featured data-bound control that allows its elements to be reordered on the client via drag and drop.
    • TextBoxWatermark: This extender adds "watermark" prompt text to TextBoxes on the page.
    • ToggleButton: This extender turns an ASP.NET CheckBox into an image checkbox.

Опубликовал admin
7 Май, Воскресенье 2006г.

Программирование для чайников.