TreeView.ItemTemplate プロパティ

定義

各項目の表示に使用する DataTemplate を取得または設定します。

UWP 用の同等の WinUI 2 API: Microsoft.UI.Xaml.Controls.TreeView.ItemTemplate (Windows アプリ SDKの WinUI の場合は、Windows アプリ SDK名前空間を参照してください)。

DataTemplate ItemTemplate();

void ItemTemplate(DataTemplate value);
public DataTemplate ItemTemplate { get; set; }
var dataTemplate = treeView.itemTemplate;
treeView.itemTemplate = dataTemplate;
Public Property ItemTemplate As DataTemplate
<TreeView>
  <TreeView.ItemTemplate>
    singleDataTemplate
  </TreeView.ItemTemplate>
</TreeView>
- or -
<TreeView ItemTemplate="resourceReferenceToDataTemplate"/>

プロパティ値

データ オブジェクトの視覚化を指定するテンプレート。 既定値は null です

Windows の要件

デバイス ファミリ
Windows 10, version 1809 (10.0.17763.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v7.0 で導入)

この例では、ローカルに定義Itemされたオブジェクトに DataTemplate を適用する方法を示します。 TreeView を定義Itemして設定するコードについては、TreeView に関する記事の「データ バインディングを使用したツリー ビュー」の例を参照してください。

<TreeView Name="DessertTree"
          SelectionMode="Multiple"
          ItemsSource="{x:Bind DataSource}">
    <TreeView.ItemTemplate>
        <DataTemplate x:DataType="local:Item">
            <TreeViewItem ItemsSource="{x:Bind Children}"
                          Content="{x:Bind Name}"/>
        </DataTemplate>
    </TreeView.ItemTemplate>
</TreeView>

注釈

Windows 10 バージョン 1803 では、ItemTemplate プロパティはありません。 代わりに、 TreeView コントロールのテンプレートを再作成し、コンテンツが文字列でない場合はカスタム ItemTemplate を指定する必要があります。 この例では、Windows 10 バージョン 1803 のツリー ビュー項目に DataTemplate を適用する方法を示します。 TreeView を定義Itemして設定するコードについては、TreeView に関する記事の「データ バインディングを使用したツリー ビュー」の例を参照してください。

<Page.Resources>
    <DataTemplate x:Key="TreeViewItemDataTemplate" x:DataType="local:Item">
        <TreeViewItem ItemsSource="{x:Bind Children}"
                      Content="{x:Bind Name}"/>
    </DataTemplate>

    <Style TargetType="TreeView">
        <Setter Property="IsTabStop" Value="False" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="TreeView">
                    <TreeViewList x:Name="ListControl"
                                  ItemTemplate="{StaticResource TreeViewItemDataTemplate}"
                                  ItemContainerStyle="{StaticResource TreeViewItemStyle}"
                                  CanDragItems="True"
                                  AllowDrop="True"
                                  CanReorderItems="True">
                        <TreeViewList.ItemContainerTransitions>
                            <TransitionCollection>
                                <ContentThemeTransition />
                                <ReorderThemeTransition />
                                <EntranceThemeTransition IsStaggeringEnabled="False" />
                            </TransitionCollection>
                        </TreeViewList.ItemContainerTransitions>
                    </TreeViewList>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</Page.Resources>
<Grid>
    <TreeView Name="DessertTree"
              ItemsSource="{x:Bind DataSource}"/>
</Grid>

適用対象