This documentation is archived and is not being maintained.

DataGridTemplateColumn.CellTemplate Property

Gets or sets the template to use to display the contents of a cell that is not in editing mode.

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

public DataTemplate CellTemplate { get; set; }
    <DataTemplate .../>

Property Value

Type: System.Windows.DataTemplate
The template to use to display the contents of a cell that is not in editing mode. The registered default is null. For information about what can influence the value, see DependencyProperty.

The cell template defines how the content is displayed in the column cells. For more information about data templates, see Data Templating Overview and Styling and Templating.

To define the template for a cell that is in editing mode, use the CellEditingTemplate.

The following example shows how to create the CellTemplate for displaying a column of dates.

        <!--DataTemplate for Published Date column defined in Grid.Resources.  PublishDate is a property on the ItemsSource of type DateTime -->
        <DataTemplate x:Key="DateTemplate" >
            <StackPanel Width="20" Height="30">
                <Border Background="LightBlue" BorderBrush="Black" BorderThickness="1">
                    <TextBlock Text="{Binding PublishDate, StringFormat={}{0:MMM}}" FontSize="8" HorizontalAlignment="Center" />
                <Border Background="White" BorderBrush="Black" BorderThickness="1">
                    <TextBlock Text="{Binding PublishDate, StringFormat={}{0:yyyy}}" FontSize="8" FontWeight="Bold" HorizontalAlignment="Center" />
        <!--DataTemplate for the Published Date column when in edit mode. -->
        <DataTemplate x:Key="EditingDateTemplate">
            <DatePicker SelectedDate="{Binding PublishDate}"  />
    <DataGrid Name="DG1" ItemsSource="{Binding}" AutoGenerateColumns="False" >
            <!--Custom column that shows the published date-->
            <DataGridTemplateColumn Header="Publish Date" CellTemplate="{StaticResource DateTemplate}" CellEditingTemplate="{StaticResource EditingDateTemplate}" />

The following illustration shows the output from the previous XAML.

A column using a DataTemplate

.NET Framework

Supported in: 4

.NET Framework Client Profile

Supported in: 4

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.