HierarchicalDataTemplate Classe

Définition

Représente un DataTemplate qui prend en charge HeaderedItemsControl, tel que TreeViewItem ou MenuItem.

public ref class HierarchicalDataTemplate : System::Windows::DataTemplate
public class HierarchicalDataTemplate : System.Windows.DataTemplate
type HierarchicalDataTemplate = class
    inherit DataTemplate
Public Class HierarchicalDataTemplate
Inherits DataTemplate
Héritage

Exemples

Dans l’exemple suivant, ListLeagueList est une liste d’objets League. Chaque objet League a un Name et une collection d’objets Division. Chaque Division a un Name et une collection d’objets Team et chaque objet Team a 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>

L’exemple montre qu’avec l’utilisation de HierarchicalDataTemplate, vous pouvez facilement afficher des données de liste qui contiennent d’autres listes. Voici une capture d’écran de l’exemple.

Exemple de capture d’écran HierarchicalDataTemplate Exemple de

Constructeurs

HierarchicalDataTemplate()

Initialise une nouvelle instance de la classe HierarchicalDataTemplate.

HierarchicalDataTemplate(Object)

Initialise une nouvelle instance de la classe HierarchicalDataTemplate avec le type spécifié auquel le modèle est destiné.

Propriétés

AlternationCount

Obtient ou définit le nombre de conteneurs d'éléments de remplacement pour les éléments enfants.

DataTemplateKey

Obtient la clé par défaut de DataTemplate.

(Hérité de DataTemplate)
DataType

Obtient ou définit le type auquel ce DataTemplate est destiné.

(Hérité de DataTemplate)
Dispatcher

Obtient le Dispatcher associé à DispatcherObject.

(Hérité de DispatcherObject)
HasContent

Obtient une valeur qui indique si ce modèle a optimisé le contenu.

(Hérité de FrameworkTemplate)
IsSealed

Obtient une valeur qui indique si cet objet est dans un état immuable (c'est-à-dire qu'il ne peut pas être modifié).

(Hérité de FrameworkTemplate)
ItemBindingGroup

Obtient ou définit le BindingGroup qui est copié dans chaque élément enfant.

ItemContainerStyle

Obtient ou définit le Style appliqué au conteneur d'élément pour chaque élément enfant.

ItemContainerStyleSelector

Obtient ou définit la logique de sélection de style personnalisé pour un style qui peut être appliqué à chaque conteneur d'élément.

ItemsSource

Obtient ou définit la liaison pour ce modèle de données, ce qui indique où rechercher la collection qui représente le niveau suivant dans la hiérarchie de données.

ItemStringFormat

Obtient ou définit une chaîne composite qui spécifie comment mettre en forme les éléments du niveau suivant dans la hiérarchie de données s'ils sont affichés en tant que chaînes.

ItemTemplate

Obtient ou définit le DataTemplate à appliquer à la propriété ItemTemplate sur un HeaderedItemsControl généré (tel que MenuItem ou TreeViewItem) pour indiquer comment afficher des éléments à partir du niveau suivant dans la hiérarchie de données.

ItemTemplateSelector

Obtient ou définit le DataTemplateSelector à appliquer à la propriété ItemTemplateSelector sur un HeaderedItemsControl généré (tel que MenuItem ou TreeViewItem) pour indiquer comment sélectionner un modèle et afficher des éléments à partir du niveau suivant dans la hiérarchie de données.

Resources

Obtient ou définit la collection des ressources qui peuvent être utilisées dans la portée de ce modèle.

(Hérité de FrameworkTemplate)
Template

Obtient ou définit une référence à l'objet qui enregistre ou lit les nœuds XAML pour le modèle lorsque le modèle est défini ou appliqué par un writer.

(Hérité de FrameworkTemplate)
Triggers

Obtient une collection de déclencheurs qui appliquent des valeurs de propriétés ou effectuent des actions selon une ou plusieurs conditions.

(Hérité de DataTemplate)
VisualTree

Obtient ou définit le nœud racine du modèle.

(Hérité de FrameworkTemplate)

Méthodes

CheckAccess()

Détermine si le thread appelant a accès à ce DispatcherObject.

(Hérité de DispatcherObject)
Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
FindName(String, FrameworkElement)

Recherche l’élément associé au nom spécifié défini dans ce modèle.

(Hérité de FrameworkTemplate)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
LoadContent()

Charge le contenu du modèle en tant qu'instance d'un objet et retourne l'élément racine du contenu.

(Hérité de FrameworkTemplate)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
RegisterName(String, Object)

Inscrit une nouvelle paire nom-objet dans la portée de nom active.

(Hérité de FrameworkTemplate)
Seal()

Verrouille le modèle de façon à ce qu'il ne puisse pas être modifié.

(Hérité de FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété Resources sur les instances de cette classe.

(Hérité de FrameworkTemplate)
ShouldSerializeVisualTree()

Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété VisualTree sur les instances de cette classe.

(Hérité de FrameworkTemplate)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)
UnregisterName(String)

Supprime un mappage nom/objet de la portée de nom XAML.

(Hérité de FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

Vérifie le parent basé sur des modèles par rapport à un ensemble de règles.

(Hérité de DataTemplate)
VerifyAccess()

Garantit que le thread appelant a accès à DispatcherObject.

(Hérité de DispatcherObject)

Implémentations d’interfaces explicites

INameScope.FindName(String)

Retourne un objet qui a le nom d’identification fourni.

(Hérité de FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

Demande si une propriété ambiante spécifiée est disponible dans la portée actuelle.

(Hérité de FrameworkTemplate)

S’applique à