One of the most requested features across the platforms we support has been to improve the capabilities of our Microsoft Excel data export engine. With this upcoming release, the Data Grid Controls we ship for WinForms, WPF and ASP.NET will all use our new data export engine - one which retains the data shaping options you've applied within the grid control prior to the export and one which creates XLS-XLSX documents that are optimized for subsequent analysis within Microsoft Excel.
This new engine will be enabled by default and will support the following DevExpress Data Grid features:
- Data Grouping - with the ability to collapse/expand groups within a worksheet.
- Data Sorting and Filtering - allowing end-users to display relevant data in the desired order.
- Totals and Group Summaries - with the ability to modify/change formulas.
- Excel Style Format Rules
- Data Validation for Lookup and Combo-box Columns
- Fixed Columns
Data Grouping
The following document was exported to Excel from a Grid control with grouping and summaries enabled. As you can clearly see, the data groups applied prior to data export are retained and can be expanded/collapsed within Excel.
Data Sorting and Filtering
Once data is exported to Excel, sorting and filtering will be available against all columns.
Lookup Values
If the contents of your DevExpress Grid control include lookups, the exported Excel document will include all lookup values within it.
Format Rules
All format rules that have been applied to your DevExpress Grid are automatically exported to the Excel document.
Fixed Columns
If you've applied a fixed column to your DevExpress Grid control, the exported document will retain fixed column formatting within Excel.
Beyond the features I've described above, both the performance and memory usage of this new Excel export engine has been significantly improved. The following graph should give you a sense of the improvements we've achieved with this new engine (data-aware export vs WYSIWYG export).
On a final note - We realize that many of you have existing code investments and may not want to use this new export option. Should you need to use the previous data export engine for any reason, you can do so by setting a single property.
As always, we welcome your comments and feedback. Let us know what you think.