The history of DevExpress goes back to 1998, just a few years after I started my career in software engineering. In most of the projects that I've worked on since then I have used some kind of DevExpress control to significantly improve productivity and provide a better user experience to consumers.
DevExpress has a wide range of controls and utilities designed to improve the productivity for all .NET developers and web application developers. These include: WinForms controls, WPF controls, Silverlight controls, ASP.NET controls, mobile app controls, application development frameworks, web testing frameworks, refactoring tools and more. Since its inception, DevExpress controls have become an integral part of thousands of software applications.
How do DevExpress controls help developers?
A few years ago, my employer asked me to explore some of the different free tools available to help improve the user experience of our desktop application (with the hope of saving the costs associated with investing in an enterprise solution). I spent several days exploring various free tools and open source solutions available in the market and, after a quick review, found some free tools that satisfied most of our requirements. Finally we decided on one open source tool, but little did we know just how many problems we would face as the project progressed.
Free tools (for the most part) come with no professional customer support and no guarantee to fix bugs in a timely manner. Unfortunately, we discovered bugs in some of the free components we were using and many of them were seriously impacting the usability of our application. The biggest challenge we faced was that there was no one to listen to us or help when these issues arose.
Another issue was that none of the free tools had a complete array of products to meet all requirements in our enterprise-level applications, including desktop clients, web server apps, web services and Windows services. We ended up adding multiple free tools to our software suite, but this made our application sluggish, bulky and prone to errors because of the abnormal behaviour of some of the components we used.
Long story short, we eventually decided to abandon the idea of depending on free tools, but by that time we had already wasted a lot of time, effort and money exploring them.
Enterprise solutions like DevExpress offer reliable solutions to improve developer productivity without having to take chances on software releases. As a company that has been focused on developer tools for more than a decade, DevExpress' range of products offer the ultimate solution to help developers create intuitive, customer-focused applications. I have been an extremely happy user of DevExpress controls for several years and I'd like to use this review to take a closer look at some of the interesting components available in the latest WinForms product lines. If you are looking for ASP.NET controls or other productivity/testing controls, take a look at their official website for more details.
WinForms Controls and new features in version 13.1
With over 120 controls for WinForms, DevExpress offers the widest range of WinForms controls for .NET applications. Visual Studio offers many free controls, but we all know how basic they are in terms of functionality and user interface. For example, you may need to write hundreds of lines of code to customize a data grid to achieve certain types of image manipulation, but this can be achieved with just a few lines of code using DevExpress Data Grid control.
Simple grids aside, how about using some advanced reporting controls like pivot grid, charts, ribbons, live tiles, etc.? It is not a feasible solution to custom develop each of those controls for your applications. DevExpress has them all in one pack. Buy it, install it and plug them into your applications and with a few lines of code you will be able to provide an intuitive and highly flexible user interface to your consumers.
In each release, DevExpress surprises developers with new controls and components that no other company offers. In addition to introducing new controls, they are always enhancing the existing controls to provide a better experience, enhance performance and improve reliability.
Take for example the Live Tiles introduced in Windows 8, which give live updates to users through flexible tiles on the desktop. It took DevExpress no time to add the live tiles control to their WinForms product line in their release last year (it is my favourite control in their version 12.1). With this control, you can develop great desktop applications that offer the look and feel of Windows 8 live tiles.
In their latest release (ver 13.1), DevExpress has provided so many superb controls it makes it hard to pick just one or two! Let's take a look at some of the new features...
New WinForms Spreadsheet Control
Have you ever wondered if you could use the power of Excel in your application, yet provide a much better user experience and user interface without losing flexibility and without spending a lot of time? Stop thinking! The new DevExpress Spreadsheet Control comes with many powerful and flexible features.
Some of the features of this new control include:
- In-place cell editing
- Support for XLSX, XLS, CSV and TXT file formats (export and import)
- Print and Export to PDF
- Formula calculations
- Comprehensive worksheet, row, column and cell management
- Embedded pictures support
- Cell appearance and value formatting
- Automatically-generated Ribbon UI
Isn't it cool to be able to provide the editing and computing power of Excel alongside advanced options like importing, exporting, complex editing, printing and so on? The most important point to note is that you can include many of these functionalities in your application without even writing a single line of code.
Now let us get into the Visual Studio and take a look at what it takes to get started with this advanced spreadsheet control. I am using Visual Studio 2010 with DevExpress 13.1 (newer versions of Visual Studio will work as well).
First I open Visual Studio and create a new WinForms application. Next, I drag and drop the spreadsheet control into my main form. Remember, there is no need to have Microsoft Excel in either the development environment or in the end user's computer.
If you click on the small arrow on the top right corner of the control (they call it "smart tag") you can activate the task menu, which gives quick access to some of the common properties of the control. Try the "Create Ribbon" and "Create BarManager" tasks, which will add some very cool features to your spreadsheet without having to write any code at all.
A couple years ago, I worked on a project where my role was to develop an application that could provide a data entry feature (using an Excel-inspired interface) that would then export the data to a SQL server database and then (after a lot of custom validation) import it back to a spreadsheet for further editing. We wanted a flexible editor (similar to what Excel provides) along with extensive control on data validation through an event driven approach, but there were no built-in controls available in Visual Studio that offered these features. We also tried a few third-party controls but ultimately decided to develop the features ourselves since none of them really matched what we wanted and it took a few months to develop an application that satisfied what we wanted to achieve. Just by looking at the new spreadsheet controls in the DevExpress WinForms library, I am confident we could have achieved all those functionalities with just a couple of days of development work instead of the weeks and weeks of time that we spent. There is no doubt that the new controls will significantly increase productivity by giving a wide range of turnkey features available and ready right out of the box. This enables developers to focus on the real business, instead of wasting time on the user interface.
Here are some examples of complex tasks that can be achieved with just one or two lines of code:
- Opening an existing Excel document in the spreadsheet control is as easy as writing a single line of code as shown below:
- You can add a new worksheet to your spreadsheet by using the
SpreadsheetControl1.Document.Worksheets.Add("New Worksheet Name")
- The following line will insert a new worksheet in the first position:
SpreadsheetControl1.Document.Worksheets.Insert(0, "First Worksheet")
- Saving the data from the spreadsheet in the application to an Excel file is no longer a Himalayan task. The following one line will do the trick:
- Now, do you want to get you data exported into a PDF file? Again, it is not a big deal with DevExpress Spreadsheet control. All you need to add is a single line as shown below:
- If you want to custom develop the above features, I am sure it will take hundreds of lines of code, several days of development work and a lot of testing.
Other New Controls in the WinForms Product Line
Spreadsheet control is just one of several new controls added to the WinForms product line. Some of the new interesting controls include:
- WinForms Map Control - Use maps from different data providers like Bing and OpenStreetMap and embed them into your desktop applications.
- Live Tile Manager Component - With this control you can transfer data from your desktop applications to Windows 8 Live Tiles.
- New WinForms Editors - An advanced editor for WinForms applications allows editors like TreeListLookUpEdit, SparkLineEdit and PopupGalleryEdit.
- PDF Viewer Control - Allows you to embed a PDF viewer, allowing you to display .pdf files within your application, without having to install a separate PDF reader (I wish I had this component during my last project!).
- Icon Library and Image Picker - The design time comes with a rich collection of icons for use in your applications and allows you to pick icons and assign them to various controls. The Skin Synchronization also allows you to automatically adapt your grayscale icons according to the color scheme of the skin you chose.
- Gauge Controls - The new circular and linear gauges come with logarithmic scale and new styles.
- Many of the controls are upgraded to work better with touch-based applications, which is ideal for developing applications for tablets and other touch-based devices.
As I mentioned previously, DevExpress offers reliable solutions to improve developer productivity without having to take chances on software releases. DevExpress' focus on developer tools ensures that in each new release of their products, they provide improvements that address developers' needs. There is no doubt that the new controls in this release of WinForms will significantly increase productivity by giving a wide range of turnkey features available and ready right out of the box. I highly recommend this product.
To know more about the WinForms controls from DevExpress, you can visit http://www.devexpress.com/Products/NET/Controls/WinForms/.
Read more about the complete suite of DevExpress controls here:
This article was originally published at http://www.dotnetspider.com/resources/45126-DevExpress-WinForms-Controls-A-comprehensive-analysis.aspx
Disclosure of Material Connection: We have received the products mentioned above for free from the company for the purpose of reviewing. Regardless, I only recommend products or services I use personally and believe my readers will enjoy. I am disclosing this in accordance with the Federal Trade Commission's 16 CFR, Part 255: "Guides Concerning the Use of Endorsements and Testimonials in Advertising.