Udostępnij za pośrednictwem


Jak użyć szablonów do stylu ListView która korzysta z GridView

W tym przykładzie pokazano, jak używać DataTemplate obiektów i Style do określania wyglądu kontrolki ListView korzystającej z trybu wyświetlania GridView .

Przykład

W poniższych przykładach pokazano Style obiekty, DataTemplate które dostosują wygląd nagłówka kolumny dla elementu 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>

W poniższym przykładzie pokazano, jak używać tych Style obiektów i DataTemplate do ustawiania HeaderContainerStyle właściwości i HeaderTemplate obiektu GridViewColumn. Właściwość DisplayMemberBinding definiuje zawartość komórek kolumny.

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

Wartości HeaderContainerStyle i HeaderTemplate to tylko dwie z kilku właściwości, których można użyć do dostosowywania wyglądu nagłówka kolumny dla kontrolki GridView . Aby uzyskać więcej informacji, zobacz GridView Column Header Styles and Templates Overview (Style nagłówka kolumny GridView i szablony — omówienie).

W poniższym przykładzie pokazano, jak zdefiniować element DataTemplate , który dostosowuje wygląd komórek w obiekcie GridViewColumn.

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

W poniższym przykładzie pokazano, jak za pomocą tego DataTemplate polecenia zdefiniować zawartość GridViewColumn komórki. Ten szablon jest używany zamiast DisplayMemberBinding właściwości pokazanej w poprzednim GridViewColumn przykładzie.

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

Zobacz też