HeaderedItemsControl.Header Property

Definition

Gets or sets the item that labels the control.

C#
[System.ComponentModel.Bindable(true)]
public object Header { get; set; }

Property Value

An object that labels the HeaderedItemsControl. The default is null. A header can be a string or a UIElement.

Attributes

Examples

The following example shows how to create and use a header template to specify the appearance of the header.

XAML
<!--Define a control template for a HeaderedItemsControl-->
<Style TargetType="HeaderedItemsControl">
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="{x:Type HeaderedItemsControl}">
        <StackPanel>
          <Grid>
            <Rectangle Fill="{TemplateBinding Background}"/>
            <ContentPresenter ContentSource="Header"/>
          </Grid>
          <Grid>
            <Rectangle Stroke="{TemplateBinding BorderBrush}"/>
            <ItemsPresenter Margin="2,0,0,0"/>
          </Grid>
        </StackPanel>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>
XAML
<DataTemplate x:Key="RedHeaderTemplate">
  <TextBlock Text="{Binding}" Foreground="Red" 
             FontSize="16" FontWeight="Bold" 
             TextWrapping="Wrap"/>
</DataTemplate>

<DataTemplate x:Key="GreenItemTemplate">
  <TextBlock Text="{Binding}" Foreground="Green" 
             FontSize="14" FontWeight="Bold"></TextBlock>
</DataTemplate>
XAML
<!--Crate a HeaderedItemControl with a red header and green items.-->
<HeaderedItemsControl Name="hitemsCtrl"  
                      Background="DarkBlue" 
                      BorderBrush="Black"
                      Header="Header"
                      HeaderTemplate="{StaticResource RedHeaderTemplate}"
                      ItemsSource="{Binding Source={StaticResource Numbers}}"
                      ItemTemplate = "{StaticResource GreenItemTemplate}" />

Remarks

Because the Header property is of type Object, there are no restrictions on what you can put in the Header. The Header is displayed by a ContentPresenter, which is in the HeaderTemplate of the HeaderedItemsControl. For more information about how the ContentPresenter displays the Header, see ContentPresenter.

XAML Attribute Usage

<object Header="headerString"/>

XAML Property Element Usage

<object>
  <object.Header>
    <UIElement />
  </object.Header>
</object>

XAML Values

headerString The string to use as a heading.

Dependency Property Information

Item Value
Identifier field HeaderProperty
Metadata properties set to true None

Applies to

Product Versions
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10