DataGrid.CurrentColumn Property

Gets or sets the column that contains the current cell.

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

public DataGridColumn CurrentColumn { get; set; }

Property Value

Type: System.Windows.Controls.DataGridColumn
The column that contains the current cell.


When setting this property, the specified value is null.


When setting this property, the specified column is not in this DataGrid.


When setting this property, the specified column has a Visibility property value of Collapsed.


When changing the value of this property while the control is in editing mode, the edit cannot be committed or reverted.

The following example shows how to retrieve the value of the current cell using the CurrentColumn, SelectedItem and CurrentCellChanged members.

Run this sample

public partial class MainPage : UserControl
    public MainPage()
        System.Collections.ObjectModel.ObservableCollection<Color> myColors =
            new System.Collections.ObjectModel.ObservableCollection<Color>(){Colors.Red, Colors.Blue, Colors.Green};
        dataGrid1.DataContext = myColors;

    private void dataGrid1_CurrentCellChanged(object sender, EventArgs e)
        if (dataGrid1.SelectedItem != null)
            textBox1.DataContext = dataGrid1.CurrentColumn.Header.ToString() + ": " + 


<Grid x:Name="LayoutRoot" Background="White">
    <sdk:DataGrid Name="dataGrid1" AutoGenerateColumns="True" 
        SelectionMode="Single" ItemsSource="{Binding}"
        Height="129" Width="225" Margin="28,34,0,0" 
        HorizontalAlignment="Left" VerticalAlignment="Top" />
    <TextBox Name="textBox1" Height="24" Width="84" IsReadOnly="True" 
        HorizontalAlignment="Left" VerticalAlignment="Top" 
        Margin="259,83,0,0" Text="{Binding}" />


Supported in: 5, 4, 3

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions