ATLAS Control Toolkit

Published 8/27/2006 by Henry in AJAX | ASP.NET AJAX

New release ATLAS Control Toolkit on
Version 1.0.60731.0 is the latest version.
The Control Toolkit is being upgraded with a few new controls and the already existing controls are 'bugfixed'.
The Reorder List had some known issues with postbacking when it was not expected, in this release the issue is fixed.

The new controls are:

  • DynamicPopulate: (Re-)populates any element with HTML content downloaded from the server.
  • FilteredTextBox: Prevents unwanted characters from being typed into a text box.
  • PagingBulletedList: Adds flexible paging and sorting to any bulleted list.
  • PasswordStrength: Provides interactive feedback about the strength of a password being created.
  • Rating: Displays a "4 out of 5 stars" interface for ranking.

    Also in the version before this one (1.0.60626.0) there where some new Controls introduced:

  • Accordion: Displays one pane at a time from a set of multiple panes.
  • NumericUpDown: Lets you attach flexible up/down "spinners" to any TextBox.
  • ResizableControl: Makes any control resizable.


    Automated testing
    What is new also is that in the 'Walkthrough' section a walkthrough for Automated testing is added.
    I am not sure what to expect, but I am interested and maybe I will add a story on this blog about the automated testing with ATLAS Controls.

    Henry Cordes
    My thoughts exactly...

  • While trying to understand which deployment models we have in .NET 2.0 I stumbled upon the following Visual Studio 2005 add-in:

    Visual Studio 2005 Web Deployment Projects

    This add-in provides additional functionality to build and deploy Web sites and Web applications in ASP.NET 2.0 and Visual Studio 2005. This add-in includes a tool to merge the assemblies created during ASP.NET 2.0 pre-compilation, and provides a comprehensive UI within Visual Studio 2005 to manage build configurations, merging, and using pre-build and post-build tasks with MSBuild.

    Web  Deployment Project

    I think this screenshot provides a good idea about some of the the possibilities.

    Henry Cordes
    My thoughts exactly...

    After a long time, I will try to start adding new items to my blog.
    I started working for another organisation and I have been on vacation etc. etc.
    In my new job I am doing a conversion for an application from .NET Framework 1.1 to .NET Framework 2.0.
    It is an ASP.NET application containing around 20 projects.

    After the conversion to a IIS Website in Visual Studio 2005 I hit the F5 key and got the message:

    Unable to start debugging on the web server.
    The Microsoft Visual studio Remote Debugging monitor (MSVSMON.EXE) does not appear to be running on the remote computer.

    Visual Studio 2005 Remote Debugger
    After searching around for a while MVSSMON.Exe is the application that resides in the Windows Start Menu under 'Microsoft Visual Studio 2005 > Visual Studio Tools' and is named: 'Visual Studio 2005 Remote Debugger'.
    When I started the 'Visual Studio 2005 Remote Debugger Configuration Wizard', I could run the apllication as a service and debugging works always.
    It seems that when you use the IIS Website model to develop webapps the remote debugger needs to be running (Visual Studio 'thinks' it is debugging a remote machine).

    Henry Cordes
    My thoughts exactly...

    Atlas update

    Published 5/12/2006 by Henry in AJAX | ASP.NET AJAX

    The Atlas April CTP is available and has some nice features.
    I suggest everybody who takes his ASP.NET seriously tries it out. I really think Microsoft does a great job integrating "AJAX" into ASP.NET with ATLAS.
    At the ATLAS Documentation website you can find lots of documentation and if you want to see demo's visit:  
    Pageflakes I think it gives you a really good idea of what ATLAS is capable of

    Alongside the ATLAS Framework there also is a library that is developed. The "Atlas" Control Toolkit are a number (13) of controls for Atlas.
    This makes it even more easy to develop Ajax enabled webapps.

    The "Atlas" Control Toolkit consists of:

    • 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. 
    • AlwaysVisibleControl: Docks a panel to a corner of the browser window and keeps it visible even when the user scrolls.
    • DropShadow: This extender attractive drop shadows to any control on the page.
    • ModalPopup: Allows you to show styled modal UI without using HTML dialogs.
    • RoundedCorners: Rounds the corners of any control for a clean, professional look!

    You can download the "Atlas" Control Toolkit here.

    Henry Cordes
    My thoughts exactly...

    Also on March 7th I saw the Developer Days sesssion: How to built interactive webapplications with ATLAS by Scott Guthrie, the General Manager of the .NET Developer Platform from Microsoft. I must say I already played some with an early verion of the ATLAS Beta and back then I was exited. After seeing Scott I was impressed. They really are doing a fine job enabling Microsft developers to use AJAX.
    He told us ATLAS is built with two approaches to developing AJAX enabled webapps in mind:

    • Server-centric Ajax Web Development
    • Client-centric Ajax Web Development

    Where Server-centric means add UI enrichment for key scenarios, enrich applications without lots of Javascript code required and enable you to keep the core UI/Application logic on server (VB/C#).

    Server Centric ATLAS 

    Client-centric Ajax Web Development however is meant for leveraging full power of script/DHTML, provide a richer and more interactive user experience and build mash-ups, gadgets and other new immersive experiences.

    Client Centric ATLAS

    What Server-centric ATLAS basically provides is a container control that enables “updatable” regions in a page. Atlas provides a XmlHttp based (asynchronous) postback infrastructure.

    The UpdatePanel:

       1:  <atlas:UpdatePanel id ="u1" runat ="server">
       2:    <ContentTemplate > 
       3:      This content can be dynamically updated!
       4:      <asp:label id="Lablel1" runat="server"/>
       5:      <asp:buttonid=“"button1" text="Push Me!" runat="server"/>
       6:    <ContentTemplate>
       7:  </atlas:UpdatePanel>

    Atlas intercepts post-back submit actions on client. Than it uses XMLHttp to fire a postback action to the server. The Postback events fire like normal on server
    Only the content of the updatepanel regions are returned and the changed updatepanel regions are replaced on the client. All post-back actions for controls declared within an updatepanel control will cause Ajax-based post-backs with an incremental page refresh. But Post-back actions for controls outside of an updatepanel control will by default cause normal postbacks, so it is possible to use both on one page.

       1:  the below button will cause a normal full-page postback and update 
       2:  <asp:button id ="NormalPostBack" onclick ="btn1_click" runat ="server" / >
       3:  <atlas:UpdatePanelid="u1" runat="server">
       4:      <ContentTemplate>
       5:          Updatable content...
       6:           the below button will cause an Ajax postback and refresh
       7:          <asp:buttonid="AjaxPostback" onclick="btn2_click" runat="server"/>
       8:      </ContentTemplate>
       9:  </atlas:UpdatePanel>

    Than the ATLAS framework makes use of what is called 'Triggers', these can be used to associate UpdatePanels on the page with postback controls declared outside of the UpdatePanel
       1:  <asp:ControlEventTrigger> Refreshes the UpdatePanel when a control event fires.
       2:  <asp:ControlValueTrigger> Update the UpdatePanel when a control value changes. 

    For now I think this is enough for one article, so the only thing I want you to know is the ATLAS release timeframe I heard in this session:
      First public preview released September 2005  Early release to solicit feedback and comments
      March CTP will be released on the MIX Conference in Las Vegas
      Atlas CTP Go-Live License Coming Soon This will allow production applications to be deployed


    Henry Cordes
    My thoughts exactly...