How Suite It Is
By Anand Narayanaswamy
Many companies have released a range of products rolled into a .NET suite for Windows and Web development. These products not only simplify programming tasks, they also provide components that can be used to deliver cutting-edge interfaces and instantly modify the look and feel of an entire application. DXperience Universal from Developer Express (DevExpress) is one such product (http://www.devexpress.com/Products/NET/DXperience/editionUniversal.xml). DXperience includes a plethora of components for developing highly powerful Windows and ASP.NET applications. I reviewed the first build of the 2008 series, which contains tons of feature enhancements, focusing mainly on the components meant for ASP.NET applications.
I tested the product on a machine loaded with Windows XP Service Pack 2 with 512 MB of RAM. The installation package was around 150 MB; I downloaded it within 20 minutes using a broadband connection. DevExpress deserves special credit as they have created a user-friendly installer with easy to understand instructions. It automatically creates the required items on the Start menu and adds the controls to the Visual Studio Toolbox.
DXperience ships with numerous controls that can be used not only to develop Windows and Web-based projects, but also to include libraries for developing applications that make use of reports and charts in addition to IDE productivity and ORM tools CodeRush and eXpressPersistent Objects, which I hope will be useful for advanced developers. DevExpress also provides a product named eXpressApp Framework (http://www.devexpress.com/xaf) that leverages and exploits their rich set of presentation and reporting components, and allows developers to build and maintain business applications with ease, thereby drastically reducing time to develop solutions for end users.
The ASP.NET components are bundled into various suites: ASPxGridView, ASPxperience, ASPxScheduler, ASPxSpell, and ASPxHTML Editor. The ASPxperience suite includes a set of 20 controls. A notable feature is the inclusion of a cloud/tag control, which I hope will be useful during the development of a knowledge base or a content management application.
DXperience ships with a new rich text editor for ASP.NET 2.0, built entirely with the ASPxperience Suite with the integration of ASPxUploadControl for embedding images. It includes the newly released AJAX-based ASPxTreeList control, which has numerous performance optimization features. It enables developers to render paged and hierarchical TreeLists, along with many other options (see Figure 1). The data loads quickly because of the powerful built-in AJAX capabilities.
Figure 1: Easily select an item using the TreeList control.
The latest build includes improvements for the ASPxGridView, ASPxPivotGrid, and ASPxScheduler suites, in addition to several suites oriented for the development of Windows-based applications. A complete list of all the new features is located at http://www.devexpress.com/Products/NET/DXperience/WhatsNew2008v1. Moreover, DevExpress has made available for the entire ASP.NET product line more than 10 popular theme styles, which I feel is a big bonus for developers, as they can develop applications with a uniform look and feel.
I m a big fan of the GridView control, so I was eager to test the ASPxGridView control using Visual Studio 2005. I was able to populate the control with the data using the various options from the smart tag and customize the look and feel of it by changing the theme without a single line of code. Developers should learn the use of the various properties included with each of the controls so they can make efficient use of them easily.
The column headers can now be displayed as filter dropdown buttons with the help of the Header Filter feature included with the current build. This feature enables a user to dynamically filter a column based on a unique value (see Figures 2 and 3). It also reduces the search time for locating specific data from the Grid for large databases. I was amazed to see that I was able to implement this functionality directly from the Properties window.
Figure 2: The ASPxGridView control before selecting the Header Filter feature.
Figure 3: The ASPxGridView control after selecting the Header Filter feature.
There is absolutely no need for developers to write a single line of code for performing standard tasks. However, coding may be required for advanced projects (depending on the nature of the application being developed). The next component in my pipeline was Menus. I was able to design a simple menu by making use of the various styles. A key feature is that menu items and corresponding URLs can be directly added from within the smart tag, and the required changes are reflected immediately.
I also tested a few other controls, and was able to work with them very easily. DevExpress main goal was to simplify programming time; they have achieved this through the components included in the DXperience suite.
And although my main objective was to measure the performance of the components designed for ASP.NET, I also tested a few of the controls oriented for Windows Forms; they all worked like a charm. As mentioned, the product is bundled with components designed for integrating charts (http://www.devexpress.com/Products/NET/WinForms/XtraCharts) and reports (http://www.devexpress.com/Products/NET/WinForms/XtraReports) into ASP.NET applications.
The chart control includes a wizard you can use to customize the look and feel. For guidance purposes, I would suggest DevExpress include the progress of the wizard (such as Step 4 of 15) at the top of the window. A key feature of XtraCharts is its ability to render different types of 2D and 3D charts, such as Bar, Gantt, Point, Line, Area, Pie, Radar, Polar, Candle Stick, Stock, and Manhattan Bar. Moreover, it provides full support for True OpenGL Rendering, Full Anti-Aliasing, Perspective Projection, Gradient Fill, and Texture and Transparency. An interesting point to note is that the chart demo application included with the product provides a snapshot of each and every chart view, with the required explanation and customization features (see Figure 4). This should help developers in making decisions during the development stage.
Figure 4: Chart demo in action.
XtraReports comes with a full-blown designer, as well as the ability to create subreports. It seamlessly integrates with Visual Studio, with support for Mail Merge, Master-Detail, Data Filtering, and Grouping. It ships with lots of native controls, such as Label, Line, BarCode, CheckBox, PageInfo, Panel, PictureBox, PageBreak, Table, and ZipCode, along with an enhanced RichText control and Report Explorer. XtraReports enables you to integrate your reporting applications with the XtraReports Toolbar from within the Visual Studio IDE, as well as preview the generated report before its distribution. A notable feature is that it ships with a report wizard that guides you in the report-creation activities.
DevExpress constantly provides updates and new products as and when a new technology/framework is released. At the time of this writing they were scheduled to release and showcase the beta of a new grid control for WPF and Silverlight, which promises new features for these new platforms. With this new control, developers can use the grid to develop applications powered by Silverlight and/or WPF technology.
DevExpress provides standard controls such as Button, Label, TextBox, RadioButton, and many more, which enables you to develop applications completely using the product without depending on the controls included with the .NET Framework. This enables you to develop applications with a uniform look and feel. You also can develop and integrate your own themes if you are an advanced developer.
I am very much impressed by the support provided by DevExpress. They reply to all queries very systematically, depending on the severity of the problem. In fact, they have developed a dedicated support portal (http://www.devexpress.com/Support/) that lists all the available options, including a comprehensive knowledge base, documentation, and online video demonstrations presented by the support team and other product team members. They also manage a blog, from which you can learn tips and tricks included with each product.
The entire product line is very extensive and it may take a couple of days for a developer to become accustomed with it (depending on their skill level). Depending on the creativity and imagination, a developer can build any type of application, be it pure Windows-based word processing software or an ASP.NET-based online invoicing system.
Web Site: http://www.devexpress.com
Anand Narayanaswamy, a Microsoft Most Valuable Professional (MVP), works as an independent consultant based in Trivandrum, India. Anand also works as chief technical editor for ASPAlliance.com. He is the author of Community Server Quickly (http://www.packtpub.com/community-server/book). He runs http://www.learnxpress.com, http://www.dotnetalbum.com, http://www.csharpfaq.com, http://www.computerbookreviews.org, and http://www.devreviews.com. Find out more about him at http://www.visualanand.net. He can be reached at mailto:[email protected].