Developers using a Model-View-ViewModel (MVVM) architecture can easily access the currently active data item (related to the currently ActiveCell) through our Silverlight grid control's root-level ColumnLayout.
Easily copy data from one of our Silverlight data grids, and paste it into another one of our Silverlight data grids or even a Microsoft Excel® spreadsheet.
Our Silverlight data grid honors your data annotations to improve integration with RIA Services. It supports DisplayAttribute, EditableAttribute, DisplayFormatAttribute and TimestampAttribute annotations.
The Silverlight data grid can be bound to your hierarchical data. Each enumerable field that you bind to the data grid is checked to see if it corresponds to a Column Layout (i.e., band of columns) in the grid's ColumnLayouts collection by either the field's property name matching the Key on the ColumnLayout or the data type of the field's property matching the target type on the ColumnLayout.
ColumnLayouts let you specify settings that govern how the nested rows and columns within each child band should behave. You do not need to set-up your ColumnLayouts in any strictly hierarchical manner, in fact, ColumnLayouts let you have heterogeneous bands of columns and reuse a band of columns at different levels in your grid's hierarchy.
When users select a function from the convenient Σ dropdown on a column, the Silverlight data grid control calculates a summary value on that column for all rows. It then displays this calculation in the summary row with the format and location you want. The following summary calculations are built-in to get you started:
- SUM
- COUNT
- AVERAGE
- MAXIMUM
- MINIMUM
More importantly, the Silverlight data grid control is easily extended by your own custom functions.
TemplateColumn lets you supply your own free-form content in each cell, you could show one value or many values arranged as you like. The grid doesn't do any data binding for these templated columns; instead it lets you fill cells with any content that exists in the Row serving as your data context. As long as each Row's data context has something unique (like a key) that your TemplateColumn instance can reference, you can usually use it to pull in custom content structured according to your desired template, even if that content comes from outside of the Silverlight data grid control.
If you want to create a column that is unbound, and only needs to display one value then consider the UnboundColumn, it only requires a value converter and is probably much simpler in these scenarios.