Starting from its humble origins, the .NET datagrid has transformed into a versatile but complex software component today because of related technological changes and changing business requirements. Let's peel back the layers in an attempt to better understand the control.
The very first, (free) .NET datagrid
The first-generation .NET datagrid released by Microsoft, and bundled with Visual Studio basically took tabular data and displayed it on the screen in form of rows and columns. It had basic designer (configuration) support, and paging, sorting and updating support required writing code.
The second (free) version by Microsoft
In the second release of the .NET datagrid, Microsoft added better design time capabilities, enhanced the data binding features and added out-of-the-box sorting and paging features. Microsoft also defined more run-time events ("call backs" in programming terms) to allow extending the behavior in addition to the look and feel of the grid at run time.
Third-party .NET datagrids take off
From the beginning, developers ran into limitations with the default Microsoft controls. Like now, developers wanted a user interface that was more responsive, looked more professional and met rigorous functional requirements. Moreover, developers didn't want to write a ton of code to make the data grid do even basic tasks. This was the time when .NET component vendors added a number of features that developers found lacking in the original default Microsoft controls, including:
- Multi-level grouping for hierarchical display
- Multi-column sorting to make basic analysis easier
- Auto-sized columns and rows that could be created without writing code
- Rich design time support for configuring the appearance and behavior
- In-place editing with less code
- Unbound columns to make it easier to display data dynamically
- Merge/Split cells and rows just like Microsoft Word and Excel
- Flexible styling options to make it easier to apply custom branding to the user interface
- Freezing columns just like how Microsoft Excel allowed
.NET datagrids with spreadsheet-like features
The next wave of .NET datagrids had more Microsoft Excel-like spreadsheet features, and they added support for exporting and printing just like reporting tools. New features included:
- Spreadsheet-style look and feel to leverage the popularity of Microsoft Excel
- Advanced row filtering to narrow down the results, again based on Excel
- Embedded input controls within cells just like text and images
- Multi-line rows to display composite information such as addresses within one cell
- Dynamic cell drawing for full control on the appearance of the grid
- Virtual data scrolling to display large amounts of data while providing a seamless user experience
- Configurable views, which were the next version of styling options
- Support for a range of export formats including images, Excel, Word and PDF
Today, .NET datagrids continue to add both functional and non-functional features such as performance, ease of use and ease of programming. They are the most often used components in .NET applications and are leading drivers of .NET component suite purchases.