Udostępnij za pośrednictwem


HierarchicalDataTemplate Klasa

Definicja

Reprezentuje obiekt DataTemplate obsługujący element HeaderedItemsControl, taki jak TreeViewItem lub MenuItem.

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

Przykłady

W poniższym przykładzie ListLeagueList jest to lista League obiektów. Każdy League obiekt ma Name obiekt i kolekcję Division obiektów. Każda z nich Division ma obiekt i kolekcję Team obiektów, a każdy Team obiekt ma obiekt NameName .

<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>

W przykładzie pokazano, że przy użyciu programu HierarchicalDataTemplatemożna łatwo wyświetlić dane listy zawierające inne listy. Poniżej przedstawiono zrzut ekranu przedstawiający przykład.

Zrzut ekranu przykładowego ekranu HierarchicalDataTemplate HierarchicalDataTemplate

Konstruktory

HierarchicalDataTemplate()

Inicjuje nowe wystąpienie klasy HierarchicalDataTemplate.

HierarchicalDataTemplate(Object)

Inicjuje HierarchicalDataTemplate nowe wystąpienie klasy o określonym typie, dla którego ma być przeznaczony szablon.

Właściwości

AlternationCount

Pobiera lub ustawia liczbę kontenerów elementów alternatywnych dla elementów podrzędnych.

DataTemplateKey

Pobiera domyślny klucz .DataTemplate

(Odziedziczone po DataTemplate)
DataType

Pobiera lub ustawia typ, dla którego jest to DataTemplate zamierzone.

(Odziedziczone po DataTemplate)
Dispatcher

Pobiera element, z Dispatcher który DispatcherObject jest skojarzony.

(Odziedziczone po DispatcherObject)
HasContent

Pobiera wartość wskazującą, czy ten szablon ma zoptymalizowaną zawartość.

(Odziedziczone po FrameworkTemplate)
IsSealed

Pobiera wartość wskazującą, czy ten obiekt jest w stanie niezmiennym, więc nie można go zmienić.

(Odziedziczone po FrameworkTemplate)
ItemBindingGroup

Pobiera lub ustawia BindingGroup element, który jest kopiowany do każdego elementu podrzędnego.

ItemContainerStyle

Pobiera lub ustawia Style element, który jest stosowany do kontenera elementów dla każdego elementu podrzędnego.

ItemContainerStyleSelector

Pobiera lub ustawia niestandardową logikę wyboru stylu dla stylu, który można zastosować do każdego kontenera elementów.

ItemsSource

Pobiera lub ustawia powiązanie dla tego szablonu danych, co wskazuje, gdzie znaleźć kolekcję reprezentującą następny poziom w hierarchii danych.

ItemStringFormat

Pobiera lub ustawia ciąg złożony, który określa sposób formatowania elementów na następnym poziomie w hierarchii danych, jeśli są one wyświetlane jako ciągi.

ItemTemplate

Pobiera lub ustawia DataTemplate właściwość do zastosowania do ItemTemplate właściwości wygenerowanej HeaderedItemsControl (na przykład MenuItem lub ), TreeViewItemaby wskazać, jak wyświetlać elementy z następnego poziomu w hierarchii danych.

ItemTemplateSelector

Pobiera lub ustawia DataTemplateSelector właściwość do zastosowania do ItemTemplateSelector właściwości wygenerowanej HeaderedItemsControl (na przykład MenuItem lub TreeViewItem), aby wskazać, jak wybrać szablon do wyświetlania elementów z następnego poziomu w hierarchii danych.

Resources

Pobiera lub ustawia kolekcję zasobów, które mogą być używane w zakresie tego szablonu.

(Odziedziczone po FrameworkTemplate)
Template

Pobiera lub ustawia odwołanie do obiektu, który rejestruje lub odtwarza węzły XAML dla szablonu, gdy szablon jest zdefiniowany lub stosowany przez moduł zapisywania.

(Odziedziczone po FrameworkTemplate)
Triggers

Pobiera kolekcję wyzwalaczy, które stosują wartości właściwości lub wykonują akcje na podstawie co najmniej jednego warunków.

(Odziedziczone po DataTemplate)
VisualTree

Pobiera lub ustawia węzeł główny szablonu.

(Odziedziczone po FrameworkTemplate)

Metody

CheckAccess()

Określa, czy wątek wywołujący ma dostęp do tego DispatcherObjectelementu .

(Odziedziczone po DispatcherObject)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
FindName(String, FrameworkElement)

Znajduje element skojarzony z określoną nazwą zdefiniowaną w tym szablonie.

(Odziedziczone po FrameworkTemplate)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
LoadContent()

Ładuje zawartość szablonu jako wystąpienie obiektu i zwraca element główny zawartości.

(Odziedziczone po FrameworkTemplate)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
RegisterName(String, Object)

Rejestruje nową parę nazw/obiektów w bieżącym zakresie nazw.

(Odziedziczone po FrameworkTemplate)
Seal()

Blokuje szablon, aby nie można go było zmienić.

(Odziedziczone po FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

Zwraca wartość wskazującą, czy procesy serializacji powinny serializować wartość Resources właściwości w wystąpieniach tej klasy.

(Odziedziczone po FrameworkTemplate)
ShouldSerializeVisualTree()

Zwraca wartość wskazującą, czy procesy serializacji powinny serializować wartość VisualTree właściwości w wystąpieniach tej klasy.

(Odziedziczone po FrameworkTemplate)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
UnregisterName(String)

Usuwa mapowanie nazw/obiektów z zakresu nazw XAML.

(Odziedziczone po FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

Sprawdza szablon elementu nadrzędnego względem zestawu reguł.

(Odziedziczone po DataTemplate)
VerifyAccess()

Wymusza, że wątek wywołujący ma dostęp do tego DispatcherObjectelementu .

(Odziedziczone po DispatcherObject)

Jawne implementacje interfejsu

INameScope.FindName(String)

Zwraca obiekt, który ma podaną nazwę identyfikującą.

(Odziedziczone po FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

Kwerenda, czy określona właściwość otoczenia jest dostępna w bieżącym zakresie.

(Odziedziczone po FrameworkTemplate)

Dotyczy