The Syncfusion data grid control for Silverlight is the most advanced data grid available in the market with unmatched performance and versatility. Its advanced feature set is exposed through a powerful, yet easy-to-use API with countless customization options. You can easily get started data-binding the grid to any data source, format the data with a rich selection of cell types, and enable editing, sorting, filtering, and grouping within a few minutes. The seamless editing experience rivals that of Microsoft Excel itself. The contents of the grid along with the formatting can be exported to Excel and PDF formats. The data grid control has been designed especially for the Silverlight platform and makes use of all the nuances the platform has to offer. It is also MVVM compatible.
Data binding works out of the box for all popular data sources. The data grid automatically generates columns for the data-bound collection. It even assigns appropriate column types for the specific data types. For example, Boolean fields are represented as check boxes. The data grid automatically generates columns for the properties in a data model. Also it assigns appropriate column types based on data type.
The data grid can display related information through hierarchies. The master-detail relationship is represented through nested grids which can be expanded and collapsed as required. The details view can also enable functionality like sorting and filtering. It is also possible to interact with and edit data within the child grid as you would with the parent grid. The data grid control’s flexible and powerful architecture also supports unlimited levels of nesting.
The data grid provides a seamless editing experience with 14 built-in column types. It is also possible to embed other controls such as progress bar and rating to view or edit the data using template columns. The data grid control also provides built-in support for IEditableObject to commit or rollback changes to an object that is used as the data source. When editing the data, you don’t have to worry about data presentation, the data will automatically be sorted, grouped, and filtered based on the new value when moving to next row.
New records can be added using the add new row that can be shown either at the top or bottom of a grid.
The data grid control provides in-built support for displaying custom error information based on IDataErrorInfo, INotifyDataErrorInfo, and DataAnnotations. The data grid not only provides support for displaying error information from data, but it also provides support for cell validation and row validation. When users enter invalid data, they are prevented from leaving the current cell/row until correct values are entered.
The data grid control allows end users to sort data against one or more columns by clicking the header or by adding SortColumnDescription in code. The data can also be sorted based on custom logic. There is also an option to sort by caption summary values when the grid is grouped.
The data grid control has extensive support for grouping data by one or more columns either programmatically or through mouse and touch interactivity. The grouping UI includes a group drop area at the top of the grid onto which column headers can be dragged and dropped to group by that column. The grouped records can be expanded and collapsed as required. The group order can also be interactively changed by rearranging the headers within the group drop area.
The data grid can calculate and display summary information for the records displayed in the grid or for a particular group alone. There is built-in support for sum, min, max, average, and count aggregates. It also possible to create and add custom aggregates as desired.
The data grid provides an Excel-inspired filtering UI with advanced filtering options. The filter UI can also be fully customized. For example, you can enable check box filtering or advanced filtering UI. Custom filtering can be done by adding filter predicates to columns.
The data grid control provides powerful data virtualization in these ways:
The data grid control provides various advanced column options to provide a better user experience:
The data grid provides built-in support for row-based selection as well as cell-based selection similar to Excel. Both selection modes have several options like selecting single cell/row, multiple, non-contiguous rows/cells. The usability of a grid greatly depends on how easy it is to navigate and edit the grid using the keyboard alone. The data grid provides extensive support for proper keyboard handling. Arrow keys will move the current cell. Page Up/Page Down keys will scroll the grid by page. F2 will activate/deactivate a cell. F4 and Alt+down arrow will drop-down/close a cell. Ctrl+arrow keys will move to first/last row/column. Delete will delete selected rows. Ctrl+X, Ctrl+V, and Ctrl+C support common clipboard operations. All keyboard operations can also be fully customized.
The data grid control has built-in options to page the data and improve performance when dealing with large volumes of data.
The data grid control is fully customizable using Microsoft Expression Blend. It also provides support for displaying alternate row styles and the ability to customize a cell’s appearance based on data using templates. The data grid can be easily customized using Microsoft Expression Blend.
The data grid control provides support to change the height of a row based on the content of any column or just certain columns to greatly enhance the readability of content.
Syncfusion’s data grid has added support to freeze rows or columns at the top and bottom just like Excel.
Alternate row styles greatly enhance the readability of the data.
The data grid control provides support for various visual styles that set up a common appearance to all the components in the grid. This greatly enhances the appearance of grid and provides better user experience. You can directly apply the visual style to the data grid or customize it based on your requirements.The data grid control provides the following visual styles support:
The column chooser UI can be selectively enabled to let end users interactively choose the visible columns. The default UI can also be customized as required.
The row header is used to denote the state of a row and any error information that is present. The row header can show different states like current row, row in edit, add new row, and error state.
The data grid control provides a rich set of options for exporting data to Excel (.xls or .xlsx) file formats compatible with Excel versions 97-2013. Groups, master-details view, and summary information can be exported to Excel. There are several customization options available, like excluding specific columns, exporting selected rows, and paging data to different worksheets.
Similar to the Excel export capability, it is also possible to export the contents of the grid to a PDF with several customization options.
The data grid control provides built-in support for print and print preview dialogs. This dialog has options for selecting paper size, zooming on content, orientation, paper margins, etc. It is also possible to customize the print content using templates.
The data grid control supports XML serialization to preserve and restore grid settings. It provides the support to serialize and deserialize filters. It also provides the options to enable or disable the grid settings via serialization options and deserialization options.
All the static text in the data grid can be localized to any desired language.