En ce qui concerne une question que j'ai posté plus tôt (WPF: Correctly storing an object in a TreeViewItem)Avoir HierarchicalDataTemplates dans un TreeView
Est-il possible d'avoir niché HierarchicalDataTemplate
s dans un TreeView?
Prenons l'exemple suivant:
code:
public class Artist
{
private readonly ICollection<Album> _children = new ObservableCollection<Album>();
public string Name { get; set; }
public ICollection<Album> Albums
{
get { return _children;}
}
}
public class Album
{
private readonly ICollection<Track> _children = new ObservableCollection<Track>();
public string Name { get; set; }
public ICollection<Track> Tracks
{
get { return _children;}
}
}
Xaml:
<TreeView x:Name="_treeView">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type local:Artist}" ItemsSource="{Binding Albums}">
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
Comme vous le voyez de ce qui précède, le TreeView est seulement bi trouver les artistes et leurs albums. Comment puis-je le modifier pour inclure également les pistes des albums (comme une sous-liste des albums à savoir)?
Excellent, exactement ce que je cherchais. Merci pour votre réponse. –
Ça m'a aidé aussi. –
La question est maintenant de savoir comment faire si mon itemsource treeview est un XmlDataProvider et que je veux des templates différents en fonction d'un attribut défini dans le node correspondant –