Con respecto a una pregunta que he publicado anteriormente en (WPF: Correctly storing an object in a TreeViewItem)HierarchicalDataTemplates en un TreeView
¿Es posible haber anidado HierarchicalDataTemplate
s en un TreeView?
Tome el ejemplo siguiente:
Código:
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>
Como se puede ver de lo anterior, el TreeView es solamente bi nding de los artistas y sus álbumes. ¿Cómo puedo modificarlo para incluir también las Pistas de los álbumes (como una sub-lista de los álbumes, por ejemplo)?
Excelente, exactamente lo que estaba buscando. Gracias por su respuesta. –
Me ayudó también. –
La pregunta ahora es cómo hacer eso si mi fuente treeview es un XmlDataProvider y quiero diferentes plantillas según un atributo definido en el nodo respectivo –