C# 绑定到XML节点名
我正在尝试绑定来自WPF应用程序的一些XML数据。我已经设置了数据上下文,以便我尝试绑定到的XmlElement最终看起来像这样:C# 绑定到XML节点名,c#,wpf,xaml,xpath,C#,Wpf,Xaml,Xpath,我正在尝试绑定来自WPF应用程序的一些XML数据。我已经设置了数据上下文,以便我尝试绑定到的XmlElement最终看起来像这样: <Item name="Potion" classes="Healing Item" value="200"> <Classes> <Class value="HealingItem" /> </Classes> <Description value="A low qualit
<Item name="Potion" classes="Healing Item" value="200">
<Classes>
<Class value="HealingItem" />
</Classes>
<Description value="A low quality potion, it restores a small amount of health" />
<Components>
<HealingComponent>
<BattleHealingComponent>
<HPHealingComponent value="500" type="Absolute"/>
</BattleHealingComponent>
</HealingComponent>
</Components>
</Item>
ItemsSource="{Binding XPath=Components/*/????}"
我不知道该用什么
这个查询的结果应该显示“HealingComponent”,我已经尝试在一个在线XPath可视化工具上使用各种不同的参数,但是我不能理解这个。我已经准备好了name(),但我似乎无法让它起作用
任何帮助都将不胜感激除了
项目资源
您可能需要项目模板
,这应该可以:
<ListBox ItemsSource="{Binding XPath=Components/*}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListBox>
如果您不想做任何花哨的事情,也可以使用,尽管在本例中,绑定确保Name
不会被解释为XPath,但您可能没有DisplayMemberPath
的那种控件