Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Expand Minimize

DataGrid.Columns Property

Gets a collection that contains all the columns in the DataGrid.

Namespace:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)

member Columns : ObservableCollection<DataGridColumn> with 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.

NoteNote

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

DataGridHyperlinkColumn

Use to display URI data.

DataGridComboBoxColumn

Use to display enumeration data.

DataGridTextColumn

Use to display text.

DataGridCheckBoxColumn

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" />
No code example is currently available or this language may not be supported.

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"  />
No code example is currently available or this language may not be supported.

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"  />
No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4.6, 4.5, 4

.NET Framework Client Profile

Supported in: 4
Show:
© 2015 Microsoft