HierarchicalDataTemplate HierarchicalDataTemplate HierarchicalDataTemplate HierarchicalDataTemplate Class

Definición

Representa una DataTemplate que admite HeaderedItemsControl, como TreeViewItem o 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
Herencia

Ejemplos

En el ejemplo siguiente, ListLeagueList es una lista de objetos League.In the following example, ListLeagueList is a list of League objects. Cada objeto League tiene un Name y una colección de objetos Division.Each League object has a Name and a collection of Division objects. Cada Division tiene un Name y una colección de objetos Team y cada objeto Team tiene un 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>

En el ejemplo se muestra que, con HierarchicalDataTemplateel uso de, puede mostrar fácilmente los datos de la lista que contiene otras listas.The example shows that with the use of HierarchicalDataTemplate, you can easily display list data that contains other lists. La siguiente captura de pantalla muestra el ejemplo.The following is a screenshot of the example.

Captura de pantalla de ejemplo de HierarchicalDataTemplateHierarchicalDataTemplate sample screen shot

Constructores

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

Inicializa una nueva instancia de la clase HierarchicalDataTemplate.Initializes a new instance of the HierarchicalDataTemplate class.

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

Inicializa una nueva instancia de la clase HierarchicalDataTemplate con el tipo especificado para el que está pensada la plantilla.Initializes a new instance of the HierarchicalDataTemplate class with the specified type for which the template is intended.

Propiedades

AlternationCount AlternationCount AlternationCount AlternationCount

Obtiene o establece el número de contenedores de elementos alternos para los elementos secundarios.Gets or sets the number of alternating item containers for the child items.

DataTemplateKey DataTemplateKey DataTemplateKey DataTemplateKey

Obtiene la clave predeterminada de DataTemplate.Gets the default key of the DataTemplate.

(Inherited from DataTemplate)
DataType DataType DataType DataType

Obtiene o establece el tipo para el que está pensado este elemento DataTemplate.Gets or sets the type for which this DataTemplate is intended.

(Inherited from DataTemplate)
Dispatcher Dispatcher Dispatcher Dispatcher

Obtiene el objeto Dispatcher al que está asociado DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
HasContent HasContent HasContent HasContent

Obtiene un valor que indica si esta plantilla tiene contenido optimizado.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

Obtiene un valor que indica si este objeto está en un estado inmutable y, por lo tanto, no se puede cambiar.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

Obtiene o establece el objeto BindingGroup que se copia en cada elemento secundario.Gets or sets the BindingGroup that is copied to each child item.

ItemContainerStyle ItemContainerStyle ItemContainerStyle ItemContainerStyle

Obtiene o establece el Style que se aplica al contenedor de elementos para cada elemento secundario.Gets or sets the Style that is applied to the item container for each child item.

ItemContainerStyleSelector ItemContainerStyleSelector ItemContainerStyleSelector ItemContainerStyleSelector

Obtiene o establece la lógica de selección de estilo personalizada para un estilo que se puede aplicar a cada contenedor de elementos.Gets or sets custom style-selection logic for a style that can be applied to each item container.

ItemsSource ItemsSource ItemsSource ItemsSource

Obtiene o establece el enlace para esta plantilla de datos, que indica dónde se encuentra la colección que representa el nivel siguiente de la jerarquía de datos.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

Obtiene o establece una cadena compuesta que especifica cómo dar formato a los elementos del siguiente nivel de la jerarquía de datos si se muestran como cadenas.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

Obtiene o establece la DataTemplate que se va a aplicar a la propiedad ItemTemplate en un HeaderedItemsControl generado (como MenuItem o TreeViewItem) para indicar cómo se muestran los elementos del nivel siguiente en la jerarquía de datos.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

Obtiene o establece la DataTemplateSelector que se va a aplicar a la propiedad ItemTemplateSelector en un HeaderedItemsControl generado (como MenuItem o TreeViewItem) para indicar cómo se selecciona una plantilla para mostrar elementos del nivel siguiente en la jerarquía de datos.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

Obtiene o establece la colección de recursos que se pueden usar en el ámbito de esta plantilla.Gets or sets the collection of resources that can be used within the scope of this template.

(Inherited from FrameworkTemplate)
Template Template Template Template

Obtiene o establece una referencia al objeto que graba o reproduce los nodos XAML de la plantilla cuando un sistema de escritura define o aplica la plantilla.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

Obtiene una colección de desencadenadores que aplican valores de propiedad o realizan acciones basándose en una o varias condiciones.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

Obtiene o establece el nodo raíz de la plantilla.Gets or sets the root node of the template.

(Inherited from FrameworkTemplate)

Métodos

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

Determina si el subproceso de la llamada tiene acceso a DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

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

Determina si el objeto especificado es igual al objeto actual.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)

Busca el elemento asociado al nombre especificado que se ha definido en esta plantilla.Finds the element associated with the specified name defined within this template.

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

Sirve como la función hash predeterminada.Serves as the default hash function.

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

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

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

Carga el contenido de la plantilla como una instancia de un objeto y devuelve el elemento raíz del contenido.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()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

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

Registra un nuevo par de nombre y objeto en el ámbito de nombres actual.Registers a new name/object pair into the current name scope.

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

Bloquea la plantilla de modo que no se pueda modificar.Locks the template so it cannot be changed.

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

Devuelve un valor que indica si los procesos de serialización deben serializar el valor de la propiedad Resources en las instancias de esta clase.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()

Devuelve un valor que indica si los procesos de serialización deben serializar el valor de la propiedad VisualTree en las instancias de esta clase.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()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

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

Quita una asignación de nombre y objeto del ámbito de nombres XAML.Removes a name/object mapping from the XAML namescope.

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

Comprueba el elemento primario con plantilla mediante un conjunto de reglas.Checks the templated parent against a set of rules.

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

Exige que el subproceso de la llamada tenga acceso a DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Implementaciones de interfaz explícitas

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

Devuelve un objeto que tiene el nombre de identificación proporcionado.Returns an object that has the provided identifying name.

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

Consulta si la propiedad de ambiente especificada está disponible en el ámbito actual.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

Se aplica a