Freigeben über


Vorgehensweise: Verwenden von Vorlagen zum Formatieren einer ListView, die GridView verwendet

In diesem Beispiel wird gezeigt, wie Sie die Objekte DataTemplate und Style verwenden, um das Erscheinungsbild eines ListView-Steuerelements anzugeben, das den Ansichtsmodus GridView nutzt.

Beispiel

Die folgenden Beispiele zeigen Style und DataTemplate Objekte, die die Darstellung einer Spaltenüberschrift für eine GridViewColumn anpassen.

<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>

Das folgende Beispiel zeigt, wie Sie diese Style und DataTemplate Objekte verwenden, um die HeaderContainerStyle Eigenschaften HeaderTemplate eines Objekts GridViewColumnfestzulegen. Die DisplayMemberBinding Eigenschaft definiert den Inhalt der Spaltenzellen.

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

Diese HeaderContainerStyle und HeaderTemplate sind nur zwei von mehreren Eigenschaften, die Sie zum Anpassen des Erscheinungsbilds der Spaltenüberschriften für ein GridView-Steuerelement verwenden können. Weitere Informationen finden Sie unter GridView Column Header Styles and Templates Overview.

Das folgende Beispiel zeigt, wie Sie ein DataTemplate definieren, das die Darstellung der Zellen in einem GridViewColumn anpasst.

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

Das folgende Beispiel zeigt, wie Sie diesen DataTemplate verwenden, um den Inhalt einer GridViewColumn Zelle zu definieren. Diese Vorlage wird anstelle der DisplayMemberBinding Eigenschaft verwendet, die im vorherigen GridViewColumn Beispiel gezeigt wird.

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

Siehe auch