HierarchicalDataTemplate HierarchicalDataTemplate HierarchicalDataTemplate HierarchicalDataTemplate Class

Определение

Представляет DataTemplate, поддерживающий HeaderedItemsControl, как TreeViewItem или MenuItem.Represents a DataTemplate that supports HeaderedItemsControl, such as TreeViewItem or MenuItem.

public ref class HierarchicalDataTemplate : System::Windows::DataTemplate
public class HierarchicalDataTemplate : System.Windows.DataTemplate
type HierarchicalDataTemplate = class
    inherit DataTemplate
Public Class HierarchicalDataTemplate
Inherits DataTemplate
Наследование

Примеры

В следующем примере ListLeagueList является списком объектов League.In the following example, ListLeagueList is a list of League objects. Каждый объект League содержит Name и коллекцию объектов Division.Each League object has a Name and a collection of Division objects. Каждый Division содержит Name и коллекцию объектов Team, и каждый объект Team содержит Name.Each Division has a Name and a collection of Team objects, and each Team object has a 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можно легко отобразить список данных, содержащих другие списки.The example shows that with the use of HierarchicalDataTemplate, you can easily display list data that contains other lists. Ниже приведен снимок экрана примера.The following is a screenshot of the example.

![Снимок экрана примера HierarchicalDataTemplate] (~/add/media/databinding-hierarchicaldatatemplate.png "Снимок экрана примера HierarchicalDataTemplate")HierarchicalDataTemplate sample screen shot

Конструкторы

HierarchicalDataTemplate() HierarchicalDataTemplate() HierarchicalDataTemplate() HierarchicalDataTemplate()

Инициализирует новый экземпляр класса HierarchicalDataTemplate.Initializes a new instance of the HierarchicalDataTemplate class.

HierarchicalDataTemplate(Object) HierarchicalDataTemplate(Object) HierarchicalDataTemplate(Object) HierarchicalDataTemplate(Object)

Инициализирует новый экземпляр класса HierarchicalDataTemplate с указанным типом, для которого предназначается шаблон.Initializes a new instance of the HierarchicalDataTemplate class with the specified type for which the template is intended.

Свойства

AlternationCount AlternationCount AlternationCount AlternationCount

Возвращает или задает количество чередующихся контейнеров элементов для дочерних элементов.Gets or sets the number of alternating item containers for the child items.

DataTemplateKey DataTemplateKey DataTemplateKey DataTemplateKey

Возвращает ключ по умолчанию шаблона DataTemplate.Gets the default key of the DataTemplate.

(Inherited from DataTemplate)
DataType DataType DataType DataType

Получает или задает тип, для которого предназначен этот DataTemplate.Gets or sets the type for which this DataTemplate is intended.

(Inherited from DataTemplate)
Dispatcher Dispatcher Dispatcher Dispatcher

Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
HasContent HasContent HasContent HasContent

Возвращает значение, указывающее, имеет ли данный шаблон оптимизированное содержимое.Gets a value that indicates whether this template has optimized content.

(Inherited from FrameworkTemplate)
ISealable.CanSeal ISealable.CanSeal ISealable.CanSeal ISealable.CanSeal Inherited from FrameworkTemplate
ISealable.IsSealed ISealable.IsSealed ISealable.IsSealed ISealable.IsSealed Inherited from FrameworkTemplate
IsSealed IsSealed IsSealed IsSealed

Возвращает значение, указывающее, находится ли данный объект в неизменяемом состоянии (когда изменить его нельзя).Gets a value that indicates whether this object is in an immutable state so it cannot be changed.

(Inherited from FrameworkTemplate)
ItemBindingGroup ItemBindingGroup ItemBindingGroup ItemBindingGroup

Возвращает или задает объект BindingGroup, который копируется в каждый дочерний элемент.Gets or sets the BindingGroup that is copied to each child item.

ItemContainerStyle ItemContainerStyle ItemContainerStyle ItemContainerStyle

Получает или задает стиль Style, который применяется к контейнеру элемента для каждого дочернего элемента.Gets or sets the Style that is applied to the item container for each child item.

ItemContainerStyleSelector ItemContainerStyleSelector ItemContainerStyleSelector ItemContainerStyleSelector

Возвращает или задает пользовательскую логику выбора стиля для стиля, который может быть применен к каждому контейнеру элемента.Gets or sets custom style-selection logic for a style that can be applied to each item container.

ItemsSource ItemsSource ItemsSource ItemsSource

Получает или задает привязку для этого шаблона данных, которая указывает, где следует искать коллекцию, представляющую следующий уровень в иерархии данных.Gets or sets the binding for this data template, which indicates where to find the collection that represents the next level in the data hierarchy.

ItemStringFormat ItemStringFormat ItemStringFormat ItemStringFormat

Возвращает или задает составную строку, которая определяет форматирование элементов на следующем уровне иерархии данных, если они отображаются как строки.Gets or sets a composite string that specifies how to format the items in the next level in the data hierarchy if they are displayed as strings.

ItemTemplate ItemTemplate ItemTemplate ItemTemplate

Возвращает или задает DataTemplate для применения к свойству ItemTemplate на сгенерированном HeaderedItemsControl (как MenuItem или TreeViewItem) для определения способа отображения элементов следующего уровня иерархии данных.Gets or sets the DataTemplate to apply to the ItemTemplate property on a generated HeaderedItemsControl (such as a MenuItem or a TreeViewItem), to indicate how to display items from the next level in the data hierarchy.

ItemTemplateSelector ItemTemplateSelector ItemTemplateSelector ItemTemplateSelector

Возвращает или задает DataTemplateSelector для применения к свойству ItemTemplateSelector на сгенерированном HeaderedItemsControl (как MenuItem или TreeViewItem) для определения способа выбора шаблона отображения элементов следующего уровня иерархии данных.Gets or sets the DataTemplateSelector to apply to the ItemTemplateSelector property on a generated HeaderedItemsControl (such as a MenuItem or a TreeViewItem), to indicate how to select a template to display items from the next level in the data hierarchy.

Resources Resources Resources Resources

Получает или задает коллекцию ресурсов, которые могут использоваться в области видимости данного шаблона.Gets or sets the collection of resources that can be used within the scope of this template.

(Inherited from FrameworkTemplate)
Template Template Template Template

Получает или задает ссылку на объект, который записывающий или воспроизводящий узлы XAML для шаблона при определении или применении шаблона модулем записи.Gets or sets a reference to the object that records or plays the XAML nodes for the template when the template is defined or applied by a writer.

(Inherited from FrameworkTemplate)
Triggers Triggers Triggers Triggers

Возвращает коллекцию триггеров, которые применяют значения свойств или выполняют действия на основе одного или нескольких условий.Gets a collection of triggers that apply property values or perform actions based on one or more conditions.

(Inherited from DataTemplate)
VisualTree VisualTree VisualTree VisualTree

Получает или задает корневой узел шаблона.Gets or sets the root node of the template.

(Inherited from FrameworkTemplate)

Методы

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Inherited from Object)
FindName(String, FrameworkElement) FindName(String, FrameworkElement) FindName(String, FrameworkElement) FindName(String, FrameworkElement)

Находит элемент, связанный с указанным именем, определенным в данном шаблоне.Finds the element associated with the specified name defined within this template.

(Inherited from FrameworkTemplate)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
LoadContent() LoadContent() LoadContent() LoadContent()

Загружает содержимое шаблона в виде экземпляра объекта и возвращает корневой элемент содержимого.Loads the content of the template as an instance of an object and returns the root element of the content.

(Inherited from FrameworkTemplate)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
RegisterName(String, Object) RegisterName(String, Object) RegisterName(String, Object) RegisterName(String, Object)

Регистрирует новую пару имя-объект в текущей области видимости имен.Registers a new name/object pair into the current name scope.

(Inherited from FrameworkTemplate)
Seal() Seal() Seal() Seal()

Блокирует шаблон, предотвращая его изменение.Locks the template so it cannot be changed.

(Inherited from FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager) ShouldSerializeResources(XamlDesignerSerializationManager) ShouldSerializeResources(XamlDesignerSerializationManager) ShouldSerializeResources(XamlDesignerSerializationManager)

Возвращает значение, указывающее, должны ли процессы сериализации сериализировать значение свойства Resources для экземпляров этого класса.Returns a value that indicates whether serialization processes should serialize the value of the Resources property on instances of this class.

(Inherited from FrameworkTemplate)
ShouldSerializeVisualTree() ShouldSerializeVisualTree() ShouldSerializeVisualTree() ShouldSerializeVisualTree()

Возвращает значение, указывающее, должны ли процессы сериализации сериализировать значение свойства VisualTree для экземпляров этого класса.Returns a value that indicates whether serialization processes should serialize the value of the VisualTree property on instances of this class.

(Inherited from FrameworkTemplate)
ToString() ToString() ToString() ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Inherited from Object)
UnregisterName(String) UnregisterName(String) UnregisterName(String) UnregisterName(String)

Удаляет из области видимости имен XAML сопоставление имя-объект.Removes a name/object mapping from the XAML namescope.

(Inherited from FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement) ValidateTemplatedParent(FrameworkElement) ValidateTemplatedParent(FrameworkElement) ValidateTemplatedParent(FrameworkElement)

Проверяет шаблонный родительский элемент по набору правил.Checks the templated parent against a set of rules.

(Inherited from DataTemplate)
VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Явные реализации интерфейса

INameScope.FindName(String) INameScope.FindName(String) INameScope.FindName(String) INameScope.FindName(String)

Возвращает объект, имеющий предоставленное идентифицирующее имя.Returns an object that has the provided identifying name.

(Inherited from FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String) IQueryAmbient.IsAmbientPropertyAvailable(String)

Запрашивает, доступно ли заданное внешнее свойство в текущей области.Queries whether a specified ambient property is available in the current scope.

(Inherited from FrameworkTemplate)
ISealable.Seal() ISealable.Seal() ISealable.Seal() ISealable.Seal() Inherited from FrameworkTemplate

Применяется к