WebUI Studio.NET 2007 R1
Build Rich Client-Side UIs
By Ken Cox
First published by Visual Studio Magazine in 04/2007 issue - Link to the original article
The centerpiece of the suite is WebGrid.NET Enterprise, which provides not only
a grid, but hierarchical drilldowns, data lists, and a treeview (see Figure 1).
To get a feel for what the grid can do, I started with the examples.
It conveniently installs as Visual Studio Web projects in C# and VB. The default
"Elegant" style renders a Northwind-driven grid inside an HTML table that's decorated
with subtle gradients, background images, rounded corners, and drop shadows. I had
to enter some data to be sure I was viewing a real grid and not an artist's rendering.
Right-clicking on the Company Name header brings up a context menu that offers sorting,
filtering, grouping, and the ability to remove columns from view. The column-freezing
is excellent because you always get a complete view of the adjacent column as you
scroll. The starter page, including its explanatory and marketing text, weighs in
at a reasonable 91,754 bytes.
Figure 1: Eye Candy with Mouth-Watering Features
Out of the box, WebUI Studio.NET 2007's WebGrid is an attractive control that's
full of advanced features. It handles large datasets and exports data to several
popular formats including PDF and Excel.
Data-driven Web controls—especially grids—bog down when force-fed huge amounts of
data. AJAX reduces the number of aggravating page refreshes, but snappy performance
can falter when loading, sorting, and updating huge datasets. An effective technique
is to load only the first page of data and then fetch more on demand. Intersoft
Solutions implements this "just-in-time" loading approach with its included ISDataSource
control. As you scroll or page down, the grid brings in more data. The hierarchical
grid loads child rows only when the user clicks the expand button. That said, don't
expect miracle performance when sorting hundreds of rows on a busy grid. There's
a limit to what vendors can accomplish even with the optimized JavaScript routines
in WebUI Studio.NET 2007. Here's some advice: When you're moving data entry operations
from a thick client to a Web application, part of your job is to manage users' expectations
about Web responsiveness. Otherwise, end-users will strangle you while waiting for
a browser-screen update.
Another major part of the WebUI Studio.NET suite is WebDesktop.NET, which turns
the browser into a workspace complete with panes, applets, toolbars, tabs, and menus
that end-users can move, dock, and resize. This is the client-side toolbox for creating
your own version of Outlook Web Access, including snazzy features like fade-in notifications
when new mail arrives, an attractive rich-text editor, and a file explorer. It's
tempting (and feasible) with these tools to replicate the client-side effects used
by high-end Web applications such as Live.com. However, some fragility creeps in
with the escalating client-side "Wow" factor. For example, on one page that uses
several WebDesktop.NET controls, IE 7 on my development machine inexplicably threw
the runtime error "document.getElementById(...) is null or not an object" on page
load. Unless you're a client-side script jockey, debugging someone else's JavaScript
is going to be a challenge.
WebUI Studio.NET 2007 is so feature rich it would be impossible to cover them all
in the space for this article. I could write a page about the extensive WebInput
controls alone. Imagine a text, currency, or number format, and you'll almost certainly
find a highly functional mask for it. The design-time support for creating input
types is superb, not to mention a handy wizard for newbies.
The suite's documentation isn't quite as polished as the components themselves.
There's plenty of useful, well-organized content, but it needs a once-over by a
professional editor whose mother tongue is English to brush up the grammar and overall
readability.
WebUI Studio.NET 2007 does its job extremely well. At $1,499 for a realistic developer
license (you can install your personal copy on more than one computer) and free
runtime distribution, it's also a tremendous value.
WebUI Studio.NET 2007
Intersoft Solutions
Web: www.intersoftpt.com
Phone: +62 21 25556680
Price: $1,499
Quick Facts: Advanced suite of user interface components for ASP.NET 2.0
and Visual Studio 2005 including grid, input, combo box, menus, treeview, panels,
and data source controls.
Pros: Handles large datasets; excellent use of AJAX, client-side scripting
and CSS; hundreds of useful examples; attractive default designs; grid exports data
to many formats; excellent design-time experience.
Cons: Occasional JavaScript errors; documentation grammar mistakes. [Please read our response at the bottom of the article]
Ken Cox is a programming writer and .NET developer specializing in documentation
and samples for programmers. He's a contributing author of ASP.NET 2.0 All-In-One
Desk Reference For Dummies from Wiley. Ken is a Microsoft MVP for ASP.NET and a
former broadcast journalist. He works from a lakefront home in Nipissing Township,
Ontario for much of the year and spends the winter months in Victoria, British Columbia.
Reach Ken at kjopc@hotmail.