HierarchicalDataTemplate Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa una DataTemplate que admite HeaderedItemsControl, como TreeViewItem o 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
. Cada objeto League
tiene un Name
y una colección de objetos Division
. Cada Division
tiene un Name
y una colección de objetos Team
y cada objeto Team
tiene un 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>
El ejemplo muestra que, mediante HierarchicalDataTemplate, puede mostrar fácilmente datos de lista que contienen otras listas. La siguiente captura de pantalla muestra el ejemplo.
captura de
Constructores
HierarchicalDataTemplate() |
Inicializa una nueva instancia de la clase HierarchicalDataTemplate. |
HierarchicalDataTemplate(Object) |
Inicializa una nueva instancia de la clase HierarchicalDataTemplate con el tipo especificado para el que está pensada la plantilla. |
Propiedades
AlternationCount |
Obtiene o establece el número de contenedores de elementos alternos para los elementos secundarios. |
DataTemplateKey |
Obtiene la clave predeterminada de DataTemplate. (Heredado de DataTemplate) |
DataType |
Obtiene o establece el tipo para el que está pensado este elemento DataTemplate. (Heredado de DataTemplate) |
Dispatcher |
Obtiene el objeto Dispatcher al que está asociado DispatcherObject. (Heredado de DispatcherObject) |
HasContent |
Obtiene un valor que indica si esta plantilla tiene contenido optimizado. (Heredado de FrameworkTemplate) |
IsSealed |
Obtiene un valor que indica si este objeto está en un estado inmutable y, por lo tanto, no se puede cambiar. (Heredado de FrameworkTemplate) |
ItemBindingGroup |
Obtiene o establece el objeto BindingGroup que se copia en cada elemento secundario. |
ItemContainerStyle |
Obtiene o establece el Style que se aplica al contenedor de elementos para cada elemento secundario. |
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. |
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. |
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. |
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. |
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. |
Resources |
Obtiene o establece la colección de recursos que se pueden usar en el ámbito de esta plantilla. (Heredado de FrameworkTemplate) |
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. (Heredado de FrameworkTemplate) |
Triggers |
Obtiene una colección de desencadenadores que aplican valores de propiedad o realizan acciones basándose en una o varias condiciones. (Heredado de DataTemplate) |
VisualTree |
Obtiene o establece el nodo raíz de la plantilla. (Heredado de FrameworkTemplate) |
Métodos
CheckAccess() |
Determina si el subproceso de la llamada tiene acceso a DispatcherObject. (Heredado de DispatcherObject) |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
FindName(String, FrameworkElement) |
Busca el elemento asociado con el nombre especificado que se definió en esta plantilla. (Heredado de FrameworkTemplate) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
LoadContent() |
Carga el contenido de la plantilla como una instancia de un objeto y devuelve el elemento raíz del contenido. (Heredado de FrameworkTemplate) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
RegisterName(String, Object) |
Registra un nuevo par de nombre y objeto en el ámbito de nombres actual. (Heredado de FrameworkTemplate) |
Seal() |
Bloquea la plantilla de modo que no se pueda modificar. (Heredado de FrameworkTemplate) |
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. (Heredado de FrameworkTemplate) |
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. (Heredado de FrameworkTemplate) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
UnregisterName(String) |
Quita una asignación de nombre y objeto del ámbito de nombres XAML. (Heredado de FrameworkTemplate) |
ValidateTemplatedParent(FrameworkElement) |
Comprueba el elemento primario con plantilla mediante un conjunto de reglas. (Heredado de DataTemplate) |
VerifyAccess() |
Exige que el subproceso de la llamada tenga acceso a DispatcherObject. (Heredado de DispatcherObject) |
Implementaciones de interfaz explícitas
INameScope.FindName(String) |
Devuelve un objeto que tiene el nombre de identificación proporcionado. (Heredado de FrameworkTemplate) |
IQueryAmbient.IsAmbientPropertyAvailable(String) |
Consulta si la propiedad de ambiente especificada está disponible en el ámbito actual. (Heredado de FrameworkTemplate) |