0
我有一个XML文件填充一个TreeView如下:如何填充基于选择一个DataGrid在一个TreeView
<Window.Resources>
<XmlDataProvider x:Key="xdpMusicLibrary" Source="MusicLibrary.xml" XPath="LIBRARY" />
<HierarchicalDataTemplate x:Key="hdtTrack">
<!-- From ... <TRACK><TITLE>Track Title</TITLE> ... -->
<TextBlock Text="{Binding XPath=TITLE/text()}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate x:Key="hdtAlbum"
ItemTemplate="{StaticResource hdtTrack}"
ItemsSource="{Binding XPath=TRACK}">
<!-- From ... <ALBUM><TITLE>Album Title</TITLE> ... -->
<TextBlock Text="{Binding XPath=TITLE/text()}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate x:Key="hdtArtist"
ItemTemplate="{StaticResource hdtAlbum}"
ItemsSource="{Binding XPath=ALBUM}">
<!-- From ... <ARTIST><NAME>Artist Name</NAME> ... -->
<TextBlock Text="{Binding XPath=NAME/text()}" />
</HierarchicalDataTemplate>
</Window.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TreeView Grid.Column="0" Name="tvMusicLibrary"
ItemsSource="{Binding Source={StaticResource xdpMusicLibrary}, XPath=ARTIST}"
ItemTemplate="{StaticResource hdtArtist}" />
我想DataGrid中显示在TreeView选择的节点(例如,如果我选择一个艺术家,在DataGrid能在树艺术家下面的每一张专辑充满了每首歌曲,与列:曲目编号,歌曲名称,艺术家,专辑
的XML的结构为:
<LIBRARY>
<ARTIST>
<NAME>Artist1</NAME>
<ALBUM>
<TITLE>Album1</TITLE>
<TRACK>
<NUMBER>01</NUMBER>
<TITLE>Track1</TITLE>
</TRACK>
</ALBUM>
</ARTIST>
</LIBRARY>
在XAML中这可能吗?
你为什么不想要使用的代码?如果您使用代码隐藏类。你可以轻松实现这一点。 –