ASP.NET component libraries are in abundance for developers to choose from.
However, not all of them truly deliver something innovative and different. So,
this time when we came around this library of components from WebDesktop.NET for
enabling desktop functionality and responsiveness in ASP.NET web applications,
we checked it out according to the aspects mentioned above. You can initially
download a trial version for playing around and initial evaluation before you
buy a licensed version. Or still better read on to find out what we feel about
the components provided in WebDesktop.NET to even eliminate this hassle.
|
The components
The components in WebDesktop. NET are designed to provide a rich application
interface on Web that follows desktop-concept user interface. To start with, the
components very well reflect this design philosophy as you will find many
desktop like components here such as the 'WebExplorerPane' which, in fact is
like a Windows explorer for your Web application. Other such features are hybrid
menus, in-built taskbar etc. The most impressive of the lot is the
'WebDesktopManager' component, which gives a rich desktop on the fly. It has a
navigation system, shortcut icons, keyboard navigation, taskbar configurations
that are customizable, and many other similar options. So once you draw this
component to your page, all you need to do most of the time is play around with
configurable properties to get your work done.
The other one that caught our attention was 'WebNotification'. Quite easily
one of the first of this kind. WebNotification is closely integrated with
WebDesktopManager to enable you to develop a shell-level notification system
right into your Web applications. WebNotification allows specific server code to
be invoked asynchronously at specified interval and upon success condition, it
will display the assigned data and actions available in the context. With it,
you could develop extremely rich and responsive applications similar to Outlook
2003 or MSN Messenger.
Interface and responsiveness
Well, there is one feature that really gets these components going,
extensive AJAX capabilities built-in to them. As for better responsiveness you
can even put some logic down to the client side. And as we found out it is not
rocket science either. In general, the first step is to place the control in a
container of your choice, for example, the 'WebPaneManager' control. You then
configure the containing component to enable the specific client side
functionality you are looking for and then add Java-script code for implementing
this functionality on the client side. For example, to enable a splitter with
Collapse trigger on the client side, the code snippet enclosed in script tag is
as follows.
function Collapse_onclick()
{
var paneManager = ISGetObject("WebPaneManager1");
var pane = paneManager.GetPaneByName("Pane0");
var pairPane = paneManager.GetPaneByName("Pane01");
pane.Collapse(pairPane);
}
The logic for the Expand trigger looks as:
function Expand_onclick()
{
var paneManager = ISGetObject("WebPaneManager1");
var pane = paneManager.GetPaneByName("Pane0");
var pairPane = paneManager.GetPaneByName("Pane01");
pane.Expand(pairPane);
}
Overall, an impressive lot of components worth buying if you want a web-based
desktop-like interface.