Share via


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을 적용하는 방법을 보여줍니다. TreeViewItem 정의하고 채우는 코드는 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을 적용하는 방법을 보여줍니다. TreeViewItem 정의하고 채우는 코드는 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>

적용 대상