NetAdvantage 2003 Vol. 2
By Brian Noyes
Creating components that add immediate and significant value to what the .NET Framework provides is a challenging proposition. Infragistics continues to rise to this challenge with each release of its component suites, and NetAdvantage 2003 Vol. 2 is no different. NetAdvantage is a collection of user-interface controls for both Web Forms and Windows Forms development that lets you build rich user interfaces quickly. It contains controls for navigation, grids, trees, and charting, as well as other purposes that build on what the .NET Framework gives you and let you focus on the business problem you are trying to solve.
This newest release of NetAdvantage adds many powerful enhancements to its UltraWebBars control suite. The UltraWebBars collection is composed of three main controls: UltraWebToolbar, UltraWebTab, and UltraWebListBar. Each control takes a different approach to providing selection and navigation controls for your Web pages that can give you rich user interfaces quickly and easily within a browser window (see Figure 1).
Figure 1. The UltraWebBars controls let you add highly customizable toolbars, tabbed interfaces, and Outlook-style list bars to your Web pages to give the user a much richer navigation experience than traditional Web controls allow.
The first thing that impressed me with all of the Infragistics components is that you can easily start using them to add simple and basic functionality to your site right away. The suite includes great documentation and many good samples to show the controls in action. It even has an extensive online sample application at http://www.infragistics.com/expense that resembles an ASP.NET Starter Kit for Infragistics controls (see Figure 2).
Figure 2. The Infragistics Expense online reporting sample application gives you a complex example of a real-world application that uses the Infragistics control suite extensively.
To start using the controls in your own projects, you can add them to the Visual Studio .NET Toolbox so you can drag and drop the controls onto your Web forms as with any ASP.NET server control. Once you do, you get a rich design-time experience integrated into Visual Studio .NET through the presentation of the controls on the designer surface, the ability to customize their appearance quickly through the Properties window, and associated property editors. If you want to go beyond the basics, you won't find the controls limiting in any way.
The controls all expose extensive customization capabilities through detailed collections of styles and properties for all the elements and behaviors that comprise the controls. You can set and view these styles in the designer and have a good sense of what you are getting even before you run. Style presets let you select through the property editors where you can choose from several predefined styles. This saves you from doing a lot of property tweaking to get a handsome interface quickly, but you still have the power to go in and twiddle the properties all you want to get exactly the look and feel you need. Many of the editors have drag-and-drop capabilities for embedding child controls.
The Infragistics controls also expose a great deal of power on the coding side of the equation. They expose a rich object model consistent with other controls in the .NET Framework for coding on the server side. Many of the controls are template-driven, so you can customize the look or layout of the control and set up data binding in the server control markup within your pages and controls. The other thing the controls expose that is unavailable in most ASP.NET server controls is a massive set of client-side events and scripting capability that let you push your custom event-handling code to the client side for a more responsive user experience.
UltraWebTab lets you create tabbed interfaces to contain other sets of controls or pages so you can navigate between them easily without moving from page to page. You can drag and drop child controls, and you get complete control over the images that compose the tab itself. You have much flexibility in defining the location and orientation of the tabs relative to the content area, and now you can set a Disabled property that presents a configurable style for disabled tabs and prevents user selection of those tags until they are enabled again.
UltraListBar provides an Outlook- or Windows XP-style Explorer bar that lets you navigate through groups of items. It uses item and group selection events to trigger changes in the rest of your UI or to perform appropriate processing. You can set what images display for each item and group header, and you can customize the look of the groups. UltraListBar supports drag-and-drop design using templates in Visual Studio .NET's designer window. It includes runtime animation effects such as a full Windows application if desired, and it even supports client-side drag-and-drop layout customization at run time.
NetAdvantage contains much more than the controls I've mentioned. In Vol. 1 of the suite, UltraWebGrid was the control with the biggest improvements. Using this control, you quickly can create hierarchical grids that use a load-on-demand feature to avoid sending too much data to the client at once. You also can merge similar cells in adjacent rows, or you can add dropdowns that present multiple columns of data. You can do multicolumn sorts on the server or client side, and you can have client-side column reordering or row selection with scripting events for everything the user is doing.
Overall, there is a great deal to be said about the NetAdvantage controls for ASP.NET development, as well as Windows Forms development. When using the ASP.NET controls, you still need to consider the trade-offs in UI richness vs. download and page-rendering speed. To address this problem, Infragistics has focused this release on reducing the footprint of the controls' view state, achieving close to a 25 percent reduction across the board. All in all, I think Infragistics still leads the pack in ASP.NET controls.
Web Site: http://www.infragistics.com
Price: Starts at $495