HeaderContainerStyle Property

GridViewColumn.HeaderContainerStyle Property


Gets or sets the style to use for the header of the GridViewColumn.

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

public Style HeaderContainerStyle { get; set; }

Property Value

Type: System.Windows.Style

The Style that defines the display properties for the column header. The default is null.

The HeaderContainerStyle property and the HeaderTemplate property can together define property values and the visual tree for column header content. The HeaderContainerStyle property can also specify the visual tree by defining a ControlTemplate.

Properties that define the content, layout, and style of a column header are found in many related classes, and some of these properties have functionality that is similar or the same. For more information, see GridView Column Header Styles and Templates Overview.

When you set a style, some restrictions apply. For more information, see the Styling and Templating.

<object HeaderContainerStyle="{ResourceExtension StyleResourceKey}"/>


One of the following: StaticResource, or DynamicResource. See XAML Resources.


The key that identifies the style being requested. The key refers to an existing resource in a ResourceDictionary.


Property element syntax is technically possible, but not recommended. See Inline Styles and Templates. A binding reference using or is also possible, but uncommon.

Identifier field


Metadata properties set to true


The following example shows how to define a HeaderContainerStyle that specifies display properties for a column header.

<Style x:Key="myHeaderStyle" TargetType="{x:Type GridViewColumnHeader}">
  <Setter Property="Background" Value="LightBlue"/>
<GridViewColumn Header="Month" Width="80"
      HeaderContainerStyle="{StaticResource myHeaderStyle}"
      HeaderTemplate="{StaticResource myHeaderTemplate}"
      DisplayMemberBinding="{Binding Path=Month}"/>

The following example shows how to define a HeaderContainerStyle that defines display properties by using a ControlTemplate.

<Style x:Key="myControlTemplateStyle" 
       TargetType="{x:Type GridViewColumnHeader}">
  <Setter Property="Template">
      <ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
        <Grid Background="LightBlue">
          <DockPanel HorizontalAlignment="Center"
            <TextBlock Text="{TemplateBinding Content}" 
                  FontSize="16" Foreground="DarkBlue"/>
          <Thumb x:Name="PART_HeaderGripper"
                 Style="{StaticResource GridViewColumnHeaderGripper}"
<GridView ColumnHeaderContainerStyle="{StaticResource 
  <GridViewColumn Header="Year" Width="80"
        CellTemplate="{StaticResource myCellTemplateYear}"/>
  <GridViewColumn Header="Month" Width="80"
        CellTemplate="{StaticResource myCellTemplateMonth}"/>
  <GridViewColumn Header="Day" Width="80"
        CellTemplate="{StaticResource myCellTemplateDay}"/>

.NET Framework
Available since 3.0
Return to top
© 2015 Microsoft