Monday, January 23, 2006

Customizing ATLAS DragDropList class

For those new to ATLAS, ATLAS (http://atlas.asp.net) is a new library in development by Microsoft of client and server side components for ASP .NET 2.0, it helps incorporate the use AJAX into web applications, but it is a lot more than an AJAX library, as it also provides a set of controls that leverage DHTML and JavaScript to provide a rich user experience in web apps similar to that found in Google maps and flickr.

I'm currently working on extending the DragDropList included in this library to allow detecting when an item is added or removed and issue a call to the server using AJAX. Thanks to the help of Garbin (http://forums.asp.net/AddPost.aspx?PostID=1176694). I was able to customize this class and I'd like to share my learning with those pursuing a similar goal.
  1. Because the Web.UI.DragDropList is a sealed class, I could not inherit from it, and instead of modifying the source code (AtlasUIDragDrop.js) I chose to create a custom class starting with the code from Web.UI.DragDropList and adding my changes to a class I named Web.UI.CustomDragDropList
  2. Next inside the getDescriptor function I added the following events:

    //Step 1: Add events
    td.addEvent('removed', true);
    td.addEvent('added', true);

  3. Next I added the properties (these can be added at the top level of the class, outside any function):

    //Step 2: Create Events
    this.added = this.createEvent();
    this.removed = this.createEvent();

  4. Finally inside the onDragEnd function I added the removed event invocation and inside the drop function I added the added event invocation as follows:

    //Step 3: Invoke remove method
    this.removed.invoke(this, Web.EventArgs.Empty);
    //Step 4: Invoke added method
    this.added.invoke(this, Web.EventArgs.Empty);

The usage of this list from the ASP page is as follows:

<control id="draggableList">
<behaviors>
<customDragDropList dataType="HTML" acceptedDataTypes="'HTML'" dragMode="Move" removed="itemRemoved" added="itemAdded"> ....

Tuesday, April 19, 2005

BizTalk 2004 certification released?

The list of exams in Microsoft certification website includes the following test for BizTalk 2004:
Exam 74-135: Developing E-Business Solutions Using Microsoft BizTalk Server 2004

However as of 4/19 there is no link to the exam overview page, but if you replace the exam number in the url for any other test page, i.e. http://www.microsoft.com/learning/exams/74-135.asp it shows that this test has been available since Jan 17, 2005. It may be just a mistake on the site, anyway I've been looking forward for this exam to be released and I'm planning on taking it sometime soon.

Monday, April 18, 2005

Visual Studio .NET 2005 (Whidbey) Beta 2 released!

At last! Beta 2 of Whidbey has been released to MSDN subscribers.
http://lab.msdn.microsoft.com/vs2005/get/

I wonder if the final release date is still within the first half of 2005...

Thursday, March 17, 2005

Article about BPEL

Here's a link to an article I recently published...

Using The Business Process Execution Language (BPEL) to Integrate Business Processes
http://news.pghtech.org/teq/teqstory.cfm?ID=1329

Wednesday, March 16, 2005

My first post

This is my first blog and my first post. I'm a technologist, so I'll try to keep the main posts to my blog technology-related. My expertise is primarily in .NET and J2EE, but I consider my self to be technology agnostic, so I'm particularly interested in technologies that make heterogeneous technologies work together, such as Web Services.