如何:使用模板设置使用 GridView 的 ListView 样式

此示例演示如何使用DataTemplateStyle对象来指定使用ListView视图模式的GridView控件的外观。

示例:

以下示例展示了用于自定义Style列标题外观的DataTemplateGridViewColumn对象。

<Style x:Key="myHeaderStyle" TargetType="{x:Type GridViewColumnHeader}">
  <Setter Property="Background" Value="LightBlue"/>
</Style>
<DataTemplate x:Key="myHeaderTemplate">
  <DockPanel>
    <CheckBox/>
    <TextBlock FontSize="16" Foreground="DarkBlue">
      <TextBlock.Text>
        <Binding/>
      </TextBlock.Text>
    </TextBlock>
  </DockPanel>
</DataTemplate>

下面的示例演示如何使用这些 StyleDataTemplate 对象来设置 HeaderContainerStyleHeaderTemplateGridViewColumn 属性。 该 DisplayMemberBinding 属性定义列单元格的内容。

<GridViewColumn Header="Month" Width="80"
      HeaderContainerStyle="{StaticResource myHeaderStyle}"
      HeaderTemplate="{StaticResource myHeaderTemplate}"
      DisplayMemberBinding="{Binding Path=Month}"/>

HeaderContainerStyleHeaderTemplate是您可以用于自定义GridView控件列标题外观的多个属性中的两个。 有关详细信息,请参阅 GridView 列标题样式和模板概述

下面的示例演示如何定义一个 DataTemplate 自定义单元格在一个 GridViewColumn中的外观。

<DataTemplate x:Key="myCellTemplateMonth">
  <DockPanel>
    <TextBlock Foreground="DarkBlue" HorizontalAlignment="Center">
      <TextBlock.Text>
        <Binding Path="Month"/>
      </TextBlock.Text>
    </TextBlock>
  </DockPanel>
</DataTemplate>

以下示例演示如何使用此 DataTemplate 函数定义单元格的内容 GridViewColumn 。 此模板用于替代在上一DisplayMemberBinding示例中所显示的GridViewColumn属性。

<GridViewColumn Header="Month" Width="80"
      CellTemplate="{StaticResource myCellTemplateMonth}"/>

另请参阅