次の方法で共有


方法: テンプレートを使用して GridView を使用する ListView のスタイルを設定する

この例では、DataTemplateオブジェクトとStyle オブジェクトを使用して、ListView ビュー モードを使用するGridView コントロールの外観を指定する方法を示します。

次の例は、Styleの列ヘッダーの外観をカスタマイズするDataTemplateオブジェクトと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>

次の例では、これらのStyleオブジェクトとDataTemplate オブジェクトを使用して、HeaderContainerStyleHeaderTemplateプロパティとGridViewColumnプロパティを設定する方法を示します。 DisplayMemberBinding プロパティは、列セルの内容を定義します。

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

HeaderContainerStyleHeaderTemplateは、GridView コントロールの列ヘッダーの外観をカスタマイズするために使用できるいくつかのプロパティのうちの 2 つだけです。 詳細については、「 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}"/>

こちらも参照ください