Sdílet prostřednictvím


Jak na to: Použít šablony pro stylování ListView, který používá GridView

Tento příklad ukazuje, jak pomocí DataTemplate a Style objektů určit vzhled ovládacího prvku ListView, který používá režim zobrazení GridView.

Příklad

Následující příklady ukazují Style a DataTemplate objekty, které přizpůsobí vzhled záhlaví sloupce pro GridViewColumn.

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

Následující příklad ukazuje, jak pomocí těchto objektů Style a DataTemplate nastavit vlastnosti HeaderContainerStyle a HeaderTemplate pro GridViewColumn. Vlastnost DisplayMemberBinding definuje obsah buněk sloupce.

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

HeaderContainerStyle a HeaderTemplate jsou pouze dvě z několika vlastností, které můžete použít k přizpůsobení vzhledu záhlaví sloupce pro ovládací prvek GridView. Další informace naleznete v tématu GridView Styly a šablony záhlaví sloupců: Přehled.

Následující příklad ukazuje, jak definovat DataTemplate, který přizpůsobí vzhled buněk v GridViewColumn.

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

Následující příklad ukazuje, jak použít tento DataTemplate k definování obsahu buňky GridViewColumn. Tato šablona se používá místo vlastnosti DisplayMemberBinding, která je zobrazena v předchozím příkladu GridViewColumn.

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

Viz také