DataGrid::Columns Property
Gets a collection that contains all the columns in the DataGrid.
Assembly: PresentationFramework (in PresentationFramework.dll)
public: property ObservableCollection<DataGridColumn^>^ Columns { ObservableCollection<DataGridColumn^>^ get(); }
Property Value
Type: System.Collections.ObjectModel::ObservableCollection<DataGridColumn^>^The collection of columns in the DataGrid.
Use the Columns collection to add columns, remove columns, or update properties on the columns.
Note |
|---|
The order of columns in the collection does not determine the order that they will appear in the DataGrid. The DisplayIndex property determines the column order. |
Each column in the Columns collection defines a column in the DataGrid. The following table lists the four column types that the DataGrid provides.
Column Type | Data Display |
|---|---|
Use to display URI data. | |
Use to display enumeration data. | |
Use to display text. | |
Use to display Boolean data. |
In addition, you can define your own custom column by using DataGridTemplateColumn. Columns in the collection must derive from DataGridColumn. Note that DataGridBoundColumn, which adds support for binding, derives from DataGridColumn and is the base for several of the defined column types.
All columns in the collection use the ItemsSource property defined by the DataGrid.
You can modify the Columns collection at run time regardless of whether it contains generated columns.
The following example shows how to add a column to the collection.
<!-- ItemsSource is a DataTable that contains a list of customers. The DataTable columns are Title, FirstName, MiddleName, LastName, Suffix, CompanyName, EmailAddress, and Phone.--> <DataGrid Grid.Row="2" Name="DG2" ItemsSource="{Binding}" AutoGenerateColumns="False" />
The following example shows how to remove a column from the collection.
<Button Content="Delete First Column" Click="Button_Click" />
<!-- ItemsSource is a DataTable that contains a list of customers. The DataTable columns are Title, FirstName, MiddleName, LastName, Suffix, CompanyName, EmailAddress, and Phone.--> <DataGrid Grid.Row="1" Name="DG1" ItemsSource="{Binding}" AutoGeneratingColumn="DG1_AutoGeneratingColumn" />
The following example shows how to set properties on columns in the collection when they are auto-generated and when an event occurs.
<CheckBox Content="View Customer Details" Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked" />
<!-- ItemsSource is a DataTable that contains a list of customers. The DataTable columns are Title, FirstName, MiddleName, LastName, Suffix, CompanyName, EmailAddress, and Phone.--> <DataGrid Grid.Row="1" Name="DG1" ItemsSource="{Binding}" AutoGeneratingColumn="DG1_AutoGeneratingColumn" />
Available since 4.0
Silverlight
Available since 2.0
