Export (0) Print
Expand All

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)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public Style HeaderContainerStyle { get; set; }
<object HeaderContainerStyle="{ResourceExtension StyleResourceKey}"/>

XAML Values

ResourceExtension

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

StyleResourceKey

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

NoteNote

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

Property Value

Type: System.Windows.Style
The Style that defines the display properties for the column header. The default is null.

Identifier field

HeaderContainerStyleProperty

Metadata properties set to true

None

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.

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"/>
</Style>
<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">
    <Setter.Value>
      <ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
        <Grid Background="LightBlue">
          <DockPanel HorizontalAlignment="Center"
                      VerticalAlignment="Center">
            <CheckBox></CheckBox>
            <TextBlock Text="{TemplateBinding Content}" 
                  FontSize="16" Foreground="DarkBlue"/>
          </DockPanel>
          <Canvas>
          <Thumb x:Name="PART_HeaderGripper"
                 Style="{StaticResource GridViewColumnHeaderGripper}"
                 Background="Transparent"
                 />
        </Canvas>
        </Grid>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>
<GridView ColumnHeaderContainerStyle="{StaticResource 
                       myControlTemplateStyle}">
  <GridViewColumn Header="Year" Width="80"
        CellTemplate="{StaticResource myCellTemplateYear}"/>
  <GridViewColumn Header="Month" Width="80"
        CellTemplate="{StaticResource myCellTemplateMonth}"/>
  <GridViewColumn Header="Day" Width="80"
        CellTemplate="{StaticResource myCellTemplateDay}"/>
</GridView>

More Code

How to: Use Templates to Style a ListView That Uses GridViewThis example shows how to use the DataTemplate and Style objects to specify the appearance of a ListView control that uses a GridView view mode.

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Show:
© 2014 Microsoft