First Looks
NetAdvantage for Windows Forms 2007
This comprehensive suite of Windows Forms controls for .NET applications features external style support, and faithful reproduction of Microsoft's UI.
NetAdvantage for Windows Forms 2007 is a comprehensive suite of .NET components for Windows forms. The emphasis in the latest release is on adding dramatic styling to your application's menus, grids, tabs, editors, charts, toolbars, explorers, and so on.
Infragistics portrays its new AppStylist tool as a way for developers and graphic designers to work together: The graphics expert creates a style library, which the developer incorporates into the application. To me, this style framework is equally important to the design-challenged among us who also work alone. The advantage to separating styling and coding functions is that you can work with plain buttons, treeviews, and grids during the intense development stage where you focus on getting things working. You don't bother with tweaks like colors, gradients, and borders while you've got your nose to the code. Then, during the clean-up/make-it-pretty stage, you switch your app's minimalist UI into a thing of beauty by applying styles. With this product, you can instantly apply styles to every NetAdvantage control in the project using one line of code: AppStyling.StyleManager.Load(e.FullPath).
The use of an external file to describe the appearance of controls is similar to stylesheets in a Web application—and especially the use of skins in ASP.NET 2.0. However, instead of CSS syntax, you use XML markup stored in an Infragistics Style Library (.isl).
Most of us will be content with the set created by Infragistic's experts. There are plenty of predefined styles such as "Aero," "RadioFlyer," and "RubberBlack." The challenge emerges when your app must follow corporate branding rules that dictate custom color schemes and backgrounds. In that case, be prepared for the AppStylist application's learning curve. I expected something like a PhotoShop or FireWorks interface and ended up scratching my head and wondering where to start. As usual, I turned to the online Help's "Getting Started" topics, but found them too simplistic—I don't need screenshots showing me how to open and save files.
Exploring the help further, I found "Getting to Know NetAdvantage AppStylist," which introduced the concept of a canvas. A canvas displays prototype controls such as treeviews and grids that you apply to styles to create and preview the desired look. Unfortunately, I got bogged down in the topic's concepts such as UI Roles, inheritance, and Base overrides. I regrouped by following the "Styling a Button" walkthrough, but I can't say I found AppStylist easy. I'm sure a creative UI guru will find it easier to use the power and sophistication than I did. I'll probably stick to tweaking one of the 20+ sample styles.
If you're adopting Microsoft's new ribbon UI, you'll find all you need in the WinToolbars component samples, including some excellent text editor and live preview samples (Figure 1). You get an Office 2007-lookalike UI out of the box. The handy In Place Designer makes it easy to substitute your own elements. For example, insert your own logo in the round button by pointing the Ribbon's Application-MenuButtonImage property to a 32 by 32-pixel bitmap. Note that during the installation Infragistics makes you acknowledge that installing their Ribbon control doesn't grant you permission to exploit Microsoft's "UI capabilities" automatically. (You need to request a royalty-free license from Microsoft.)
Speaking of licensing, Infragistics' license agreement asserts ownership over any enhancements you make to their source code. While this kind of clause makes lawyers feel they've done a day's work, I wish the program managers would pay more attention to what they're shipping with their products. Silly, unenforceable clauses only spawn disrespect for other legitimate conditions that protect intellectual property and keep the third-party market vibrant. Let's not push purchasers into a situation where licensing terms are more honored in the breach than the observance.
The NetAdvantage bundle encompasses so many rich components with dozens of settings that it's impossible to do justice to them in a page or two. For example, you use the chameleon-like UltraTree component to create property pages such as the ones you get by pressing F4 in Visual Studio 2005. Or, you can embed a rich editor in every tree node and load large amounts of data on demand.
The grid control is a good example of the fine wizard and layout tools available throughout the suite. Rather than working in a lifeless properties page, you launch the UltraWinGrid designer and watch the Feature Picker explain your options. Letting the tool write bug-free code for you is rapid application development (RAD) at its best. Then again, with such high-end design-time support, you might feel that the wizards have reduced your role as a developer to making a few choices and then gluing a few objects together in event handlers. Accept your fate, and get home on-time for a change.
The samples in the package do a good job of showing the controls' capabilities. Some, like the Time Zone project, are so complete that you can plug them in as-is into your own application.
NetAdvantage for Windows Forms includes strong styling support, royalty-free runtimes, useful examples, solid documentation, and available source code. It also lets you adopt Microsoft's recent "look" in your applications quickly and easily at a reasonable cost.
NetAdvantage for Windows Forms 2007
Infragistics
Web: www.infragistics.com
Phone: 800-231-8588
Price: $795
Quick Facts: Comprehensive suite of Windows Forms controls for .NET applications including implementations of the Office 2007 Ribbon interface.
Pros: External style support; faithful reproduction of Microsoft's UI; valuable code samples; source code available; excellent design-time support; royalty-free runtime; quality documentation.
Cons: Learning curve for style designer tool; license asserts ownership of source code enhancements.
About the Author
Ken Cox is a Canadian .NET programming writer and the author of "ASP.NET 3.5 for Dummies" (Wiley).