One of the big advantages of developing ASP.Net 2.0 Web sites with Visual Studio 2005 or Visual Web Developer Express is that
you can accomplish a great deal in design mode by dragging, dropping, and configuring components before manipulating the components
programmatically. Microsoft supplies dozens of controls in its Standard and Data toolboxes; it also allows developers to add
controls to the Visual Studio toolbox.
When those controls aren’t enough, developers can expand their selection third-party offerings. Two of the most prominent
control collections for ASP.Net 2.0 are Infragistics NetAdvantage for ASP.Net and telerik r.a.d.controls for ASP.Net. Each
includes about 30 controls and supports AJAX (Asynchronous JavaScript and XML).
[Screencasts: Infragistics, telerik]
I found both of these control sets to be potentially invaluable for Web developers. Both deliver excellent grid controls,
rich edit controls, and a useful assortment of user input controls. Most of the other features balance out, with a few exceptions.
Among them, Infragistics offers a significantly more capable chart control, as well as somewhat better documentation.
Taking control
Both NetAdvantage and r.a.d.controls add significant capabilities to Visual Studio 2005 that will allow developers to be more
productive. Many of their controls are directly comparable with each other; a few are unique.
Consider the simple but extremely common problem of getting a number in a specific range from the user. Using standard Microsoft
controls, you would add a TextBox to your Web form along with a RangeValidator. With NetAdvantage controls, you add a WebNumericEdit
control to your Web form, set its DataMode, MinValue, and MaxValue properties, and choose a design preset to match the desired
look and feel; this control returns the validated number in the correct type of variable, which, compared with the standard
Microsoft controls, can save quite a bit of time programming validators.
Using r.a.d.controls, which lacks a specific input control for numbers, you add a RadMaskedTextBox control to your Web form and either set its Mask property to the maximum number of digits or set a NumericRange
into its Mask property. The final capabilities are very similar here; in fact, NetAdvantage has a WebMaskEdit control that
uses the same approach as the RadMaskedTextBox. Overall, however, I find the NetAdvantage approach to user input controls
a little more convenient because it has controls that have already been typed and customized for editing numbers, dates, currency,
and percentages.
As for allowing the user to edit RTF or HTML with spell checking, the standard Microsoft Web controls fall down completely,
and these two products pick up the slack. Using NetAdvantage, you drag a WebHtmlEditor and a WebSpellChecker to your form, configure the editor style, set a
property in the WebHtmlEditor to connect the two, and set another to activate a SpellCheck button. The WebHtmlEditor and WebSpellChecker are recent additions
to NetAdvantage, but they are very competitive with their telerik counterparts.
Using telerik’s offering, you drag a r.a.d.editor control to your form, and the r.a.d.spell component will be activated automatically.
The recently “AJAX-ified” r.a.d.editor is quite mature, boasts improved performance, and can spell-check in multiple languages.
As a new capability, r.a.d.spell offers a .Net API that can be used from Web services, WinForms applications, and AJAX callbacks.
Both the WebHtmlEditor and r.a.d.editor provide a full set of editing toolbars. Overall, however, I slightly prefer telerik’s
Rich Text editor and spell checker to Infragistics’s.
Chart your course
The standard Microsoft controls don’t cover charting; NetAdvantage and r.a.d.controls again pick up the slack, both offering
grids, menus, tree controls, tab strips, toolbars, panels, date pickers, and calendars. Between the two sets, NetAdvantage’s
UltraChart has more mature and capable chart control over r.a.d.chart. UltraChart displays more than a dozen types of 3-D
charts and a couple dozen types of 2-D charts, allowing for multiple linear and logarithmic axes, multiple layers and areas,
annotations, and most of the features needed for financial, scientific, and engineering charts. One of the very few chart
types I’ve used in my work that’s missing from UltraChart is a triangular line/spline chart, used for representing ternary
phase diagrams.
As far as charts go, telerik provides just enough functionality for simple business charts. The r.a.d.chart control displays
2-D point, line, bar, area, pie, spline, Bezier, Gantt, and bubble charts, with one set of axes. The telerik set also has
a
ticker and a rotator, as well as a docking manager. Also included is a bunch of controls for enabling AJAX for visual components
that don’t support it themselves; these are very useful integration tools.
On the other hand, the Infragistics set is compatible with the Microsoft Atlas AJAX framework. It also has a calculation manager
for implementing a subset of Excel’s numeric capabilities, useful for implementing online calculations without writing a lot
of code.