HierarchicalDataTemplate.ItemsSource Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém ou define a ligação para este modelo de dados, que indica onde encontrar a coleção que representa o próximo nível na hierarquia de dados.
public:
property System::Windows::Data::BindingBase ^ ItemsSource { System::Windows::Data::BindingBase ^ get(); void set(System::Windows::Data::BindingBase ^ value); };
public System.Windows.Data.BindingBase ItemsSource { get; set; }
member this.ItemsSource : System.Windows.Data.BindingBase with get, set
Public Property ItemsSource As BindingBase
Valor de Propriedade
A predefinição é null.
Exemplos
No exemplo a seguir, ListLeagueList é uma lista de League objetos. Cada League objeto tem uma Name e uma coleção de Division objetos. Cada Division tem uma Name e uma coleção de objetos Team, e cada objeto Team tem um 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>
O exemplo mostra que, com o uso de HierarchicalDataTemplate, você pode exibir facilmente dados de listas que contêm outras listas. A seguir está uma captura de tela do exemplo.
Observações
Isto é aplicado à ItemsSource propriedade num gerado HeaderedItemsControl (como a MenuItem ou a TreeViewItem) para indicar onde encontrar a coleção que representa o próximo nível na hierarquia de dados.
Utilização de Texto XAML
Para informações sobre XAML, consulte o Binding tipo.