다음을 통해 공유


HierarchicalDataTemplate 클래스

정의

TreeViewItem 또는 MenuItem과 같은 HeaderedItemsControl을 지원하는 DataTemplate을 나타냅니다.

public ref class HierarchicalDataTemplate : System::Windows::DataTemplate
public class HierarchicalDataTemplate : System.Windows.DataTemplate
type HierarchicalDataTemplate = class
    inherit DataTemplate
Public Class HierarchicalDataTemplate
Inherits DataTemplate
상속

예제

다음 예제에서 ListLeagueListLeague 개체 목록입니다. 각 League 개체에는 NameDivision 개체 컬렉션이 포함됩니다. 각 Division 에는 NameTeam 개체 컬렉션이 포함되고 각 Team 개체에는 Name이 포함됩니다.

<Window x:Class="SDKSample.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="HierarchicalDataTemplate Sample"
  xmlns:src="clr-namespace:SDKSample">
  <DockPanel>
    <DockPanel.Resources>
      <src:ListLeagueList x:Key="MyList"/>

      <HierarchicalDataTemplate DataType    = "{x:Type src:League}"
                                ItemsSource = "{Binding Path=Divisions}">
        <TextBlock Text="{Binding Path=Name}"/>
      </HierarchicalDataTemplate>

      <HierarchicalDataTemplate DataType    = "{x:Type src:Division}"
                                ItemsSource = "{Binding Path=Teams}">
        <TextBlock Text="{Binding Path=Name}"/>
      </HierarchicalDataTemplate>

      <DataTemplate DataType="{x:Type src:Team}">
        <TextBlock Text="{Binding Path=Name}"/>
      </DataTemplate>
    </DockPanel.Resources>

    <Menu Name="menu1" DockPanel.Dock="Top" Margin="10,10,10,10">
        <MenuItem Header="My Soccer Leagues"
                  ItemsSource="{Binding Source={StaticResource MyList}}" />
    </Menu>

    <TreeView>
      <TreeViewItem ItemsSource="{Binding Source={StaticResource MyList}}" Header="My Soccer Leagues" />
    </TreeView>

  </DockPanel>
</Window>

이 예제에서는 사용 하 여 보여 줍니다 HierarchicalDataTemplate, 다른 목록이 포함 된 목록 데이터를 쉽게 표시할 수 있습니다. 예제 스크린샷은 다음과 같습니다.

HierarchicalDataTemplate 샘플 스크린샷

생성자

HierarchicalDataTemplate()

HierarchicalDataTemplate 클래스의 새 인스턴스를 초기화합니다.

HierarchicalDataTemplate(Object)

템플릿을 사용할 지정된 형식을 사용하여 HierarchicalDataTemplate 클래스의 새 인스턴스를 초기화합니다.

속성

AlternationCount

자식 항목에 대해 교대로 반복되는 항목 컨테이너의 수를 가져오거나 설정합니다.

DataTemplateKey

DataTemplate의 기본 키를 가져옵니다.

(다음에서 상속됨 DataTemplate)
DataType

DataTemplate이 사용되는 형식을 가져오거나 설정합니다.

(다음에서 상속됨 DataTemplate)
Dispatcher

Dispatcher와 연결된 DispatcherObject를 가져옵니다.

(다음에서 상속됨 DispatcherObject)
HasContent

이 템플릿의 콘텐츠가 최적화되어 있는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 FrameworkTemplate)
IsSealed

이 개체가 변경할 수 없는 변경 불가능 상태인지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 FrameworkTemplate)
ItemBindingGroup

각 자식 항목에 복사되는 BindingGroup을 가져오거나 설정합니다.

ItemContainerStyle

각 자식 항목의 항목 컨테이너에 적용되는 Style을 가져오거나 설정합니다.

ItemContainerStyleSelector

각 항목 컨테이너에 적용할 수 있는 스타일의 사용자 지정 스타일 선택 논리를 가져오거나 설정합니다.

ItemsSource

데이터 계층 구조에서 다음 수준을 나타내는 컬렉션을 찾을 위치를 나타내는 이 데이터 템플릿에 대한 바인딩을 가져오거나 설정합니다.

ItemStringFormat

데이터 계층 구조에서 다음 수준의 항목이 문자열로 표시되는 경우 이 항목의 형식 지정 방법을 지정하는 복합 문자열을 가져오거나 설정합니다.

ItemTemplate

데이터 계층 구조에서 다음 수준의 항목을 표시하는 방법을 나타내기 위해 DataTemplate 또는 ItemTemplate 등 생성된 HeaderedItemsControl에 있는 MenuItem 속성에 적용할 TreeViewItem을 가져오거나 설정합니다.

ItemTemplateSelector

데이터 계층 구조에서 다음 수준의 항목을 표시하는 데 사용할 템플릿을 선택하는 방법을 나타내기 위해 DataTemplateSelector 또는 ItemTemplateSelector 등 생성된 HeaderedItemsControl에 있는 MenuItem 속성에 적용할 TreeViewItem를 가져오거나 설정합니다.

Resources

이 템플릿의 범위 내에서 사용할 수 있는 리소스의 컬렉션을 가져오거나 설정합니다.

(다음에서 상속됨 FrameworkTemplate)
Template

작성자가 템플릿을 정의하거나 적용할 때 해당 템플릿의 XAML 노드를 기록/재생하는 개체에 대한 참조를 가져오거나 설정합니다.

(다음에서 상속됨 FrameworkTemplate)
Triggers

하나 이상의 조건에 따라 속성 값을 적용하거나 작업을 수행하는 트리거의 컬렉션을 가져옵니다.

(다음에서 상속됨 DataTemplate)
VisualTree

템플릿의 루트 노드를 가져오거나 설정합니다.

(다음에서 상속됨 FrameworkTemplate)

메서드

CheckAccess()

호출 스레드가 이 DispatcherObject에 액세스할 수 있는지 여부를 확인합니다.

(다음에서 상속됨 DispatcherObject)
Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
FindName(String, FrameworkElement)

이 템플릿 내에 정의된 지정한 이름과 연결된 요소를 찾습니다.

(다음에서 상속됨 FrameworkTemplate)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
LoadContent()

템플릿의 콘텐츠를 개체의 인스턴스로 로드하고 콘텐츠의 루트 요소를 반환합니다.

(다음에서 상속됨 FrameworkTemplate)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
RegisterName(String, Object)

현재 이름 범위에 새 이름/개체 쌍을 등록합니다.

(다음에서 상속됨 FrameworkTemplate)
Seal()

템플릿을 변경할 수 없도록 잠급니다.

(다음에서 상속됨 FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

이 클래스의 인스턴스에서 serialization 프로세스를 통해 Resources 속성의 값을 serialize해야 하는지 여부를 나타내는 값을 반환합니다.

(다음에서 상속됨 FrameworkTemplate)
ShouldSerializeVisualTree()

이 클래스의 인스턴스에서 serialization 프로세스를 통해 VisualTree 속성의 값을 serialize해야 하는지 여부를 나타내는 값을 반환합니다.

(다음에서 상속됨 FrameworkTemplate)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
UnregisterName(String)

XAML 이름 범위에서 이름/개체 매핑을 제거합니다.

(다음에서 상속됨 FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

규칙 집합에 대해 템플릿 부모를 확인합니다.

(다음에서 상속됨 DataTemplate)
VerifyAccess()

호출 스레드에서 이 DispatcherObject에 액세스할 수 있는지 확인합니다.

(다음에서 상속됨 DispatcherObject)

명시적 인터페이스 구현

INameScope.FindName(String)

지정된 식별 이름이 있는 개체를 반환합니다.

(다음에서 상속됨 FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

지정된 앰비언트 속성을 현재 범위에서 사용할 수 있는지 여부를 쿼리합니다.

(다음에서 상속됨 FrameworkTemplate)

적용 대상