我有一个包含这些节点的XML文件:
<Product>
<Name>...
<Color>...
<Price>...
</Product>
我有一个列表框,显示XML文件中的所有名称,如下所示:
<ListBox Name="listBox1" ItemsSource="{Binding}">
<ListBox.ItemTemplate>
<DataTemplate>
<DockPanel >
<TextBlock Text = "{Binding Name}" />
</DockPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
当选择列表框中的项目时,我想在2个标签控件上显示所选产品的颜色和价格。
如何将颜色和价格绑定到所选名称? 这意味着我需要从XML文件中获取颜色和价格信息,因为列表框只有名称。 感谢。
答案 0 :(得分:3)
SelectedItem
将是整个项目,包含所有三个元素,所以这样的事情应该这样做:
<StackPanel DataContext="{Binding SelectedItem, ElementName=listBox1}">
<TextBlock Text="{Binding XPath=Color}" />
<TextBlock Text="{Binding XPath=Price}" />
</StackPanel>
(可以使用Binding.StringFormat
添加标签,Label
控件本身用于标记内容,不显示文字