HierarchicalDataTemplate Classe

Definizione

Rappresenta un DataTemplate oggetto che supporta HeaderedItemsControl, ad esempio 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
Ereditarietà

Esempio

Nell'esempio seguente è ListLeagueList riportato un elenco di League oggetti . Ogni League oggetto ha un Name e una collezione di Division oggetti. Ogni Division ha un Name e una raccolta di oggetti Team, e ogni oggetto Team ha 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'esempio mostra che con l'uso di è possibile visualizzare facilmente i dati dell'elenco HierarchicalDataTemplateche contengono altri elenchi. Lo screenshot seguente mostra l'esempio.

Screenshot della schermata di esempio HierarchicalDataTemplate di esempio

Costruttori

Nome Descrizione
HierarchicalDataTemplate()

Inizializza una nuova istanza della classe HierarchicalDataTemplate.

HierarchicalDataTemplate(Object)

Inizializza una nuova istanza della HierarchicalDataTemplate classe con il tipo specificato per il quale è previsto il modello.

Proprietà

Nome Descrizione
AlternationCount

Ottiene o imposta il numero di contenitori di elementi alternati per gli elementi figlio.

DataTemplateKey

Ottiene la chiave predefinita di DataTemplate.

(Ereditato da DataTemplate)
DataType

Ottiene o imposta il tipo per il quale è previsto l'oggetto DataTemplate .

(Ereditato da DataTemplate)
Dispatcher

Ottiene l'oggetto DispatcherDispatcherObject a cui è associato.

(Ereditato da DispatcherObject)
HasContent

Ottiene un valore che indica se questo modello ha contenuto ottimizzato.

(Ereditato da FrameworkTemplate)
IsSealed

Ottiene un valore che indica se l'oggetto è in uno stato non modificabile in modo che non possa essere modificato.

(Ereditato da FrameworkTemplate)
ItemBindingGroup

Ottiene o imposta l'oggetto BindingGroup copiato in ogni elemento figlio.

ItemContainerStyle

Ottiene o imposta l'oggetto Style applicato al contenitore di elementi per ogni elemento figlio.

ItemContainerStyleSelector

Ottiene o imposta la logica di selezione dello stile personalizzata per uno stile che può essere applicato a ogni contenitore di elementi.

ItemsSource

Ottiene o imposta l'associazione per questo modello di dati, che indica dove trovare la raccolta che rappresenta il livello successivo nella gerarchia di dati.

ItemStringFormat

Ottiene o imposta una stringa composita che specifica come formattare gli elementi nel livello successivo della gerarchia di dati se vengono visualizzati come stringhe.

ItemTemplate

Ottiene o imposta l'oggetto DataTemplate da applicare alla ItemTemplate proprietà in un oggetto generato HeaderedItemsControl , ad esempio o MenuItem , TreeViewItemper indicare come visualizzare gli elementi dal livello successivo nella gerarchia di dati.

ItemTemplateSelector

Ottiene o imposta l'oggetto DataTemplateSelector da applicare alla ItemTemplateSelector proprietà in un oggetto generato HeaderedItemsControl , ad esempio o MenuItem , TreeViewItemper indicare come selezionare un modello per visualizzare gli elementi dal livello successivo nella gerarchia di dati.

Resources

Ottiene o imposta la raccolta di risorse che possono essere utilizzate nell'ambito di questo modello.

(Ereditato da FrameworkTemplate)
Template

Ottiene o imposta un riferimento all'oggetto che registra o riproduce i nodi XAML per il modello quando il modello viene definito o applicato da un writer.

(Ereditato da FrameworkTemplate)
Triggers

Ottiene una raccolta di trigger che applicano valori di proprietà o eseguono azioni in base a una o più condizioni.

(Ereditato da DataTemplate)
VisualTree

Ottiene o imposta il nodo radice del modello.

(Ereditato da FrameworkTemplate)

Metodi

Nome Descrizione
CheckAccess()

Determina se il thread chiamante ha accesso a questo DispatcherObjectoggetto .

(Ereditato da DispatcherObject)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FindName(String, FrameworkElement)

Trova l'elemento associato al nome specificato definito all'interno di questo modello.

(Ereditato da FrameworkTemplate)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
LoadContent()

Carica il contenuto del modello come istanza di un oggetto e restituisce l'elemento radice del contenuto.

(Ereditato da FrameworkTemplate)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
RegisterName(String, Object)

Registra una nuova coppia nome/oggetto nell'ambito del nome corrente.

(Ereditato da FrameworkTemplate)
Seal()

Blocca il modello in modo che non possa essere modificato.

(Ereditato da FrameworkTemplate)
ShouldSerializeResources(XamlDesignerSerializationManager)

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della Resources proprietà nelle istanze di questa classe.

(Ereditato da FrameworkTemplate)
ShouldSerializeVisualTree()

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della VisualTree proprietà nelle istanze di questa classe.

(Ereditato da FrameworkTemplate)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
UnregisterName(String)

Rimuove un mapping nome/oggetto dall'ambito dei nomi XAML.

(Ereditato da FrameworkTemplate)
ValidateTemplatedParent(FrameworkElement)

Controlla l'elemento padre basato su modelli in base a un set di regole.

(Ereditato da DataTemplate)
VerifyAccess()

Impone che il thread chiamante abbia accesso a questo DispatcherObjectoggetto .

(Ereditato da DispatcherObject)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
INameScope.FindName(String)

Restituisce un oggetto con il nome di identificazione specificato.

(Ereditato da FrameworkTemplate)
IQueryAmbient.IsAmbientPropertyAvailable(String)

Esegue una query sull'eventuale disponibilità di una proprietà di ambiente specificata nell'ambito corrente.

(Ereditato da FrameworkTemplate)

Si applica a