我正在尝试从绑定到xml的树视图中获取所选节点,其中使用的XML显示以下功能,重复使用相同名称的节点
<teams>
<team name="Team1" std="-1">1</team>
<team name="Team2" std="-2">0</team>
</teams>
我写的SelectedNodeChanged函数中的:
string name = xmlTreeView.SelectedNode.DataPath;
XDocument xDoc = XDocument.Load(filename.xml);
XElement rows = xDoc.XPathSelectElement(name);
但每当我点击Treeview节点时,它只选择第一个Team元素。
例如img:每当我点击两个节点时,我总是最终获得SelectedNode.DataPath中的First Team元素
我已经阅读了很多Stack Overflow解决方案,但我没有在Xpath中传递参数,我想通过选择treeview click来解决这个问题,因为我可以选择任何xml节点并且不想硬编码Xpath解决方案,我有一点想法,如果这可以用Xpath动态完成,如果我错了请纠正我。
或者有办法解决这个问题吗?
答案 0 :(得分:0)
我认为您将TreeView与XML文档混淆。单击TreeView时,需要单击的节点提供足够的信息来标识XML节点。您可以使用Tag属性向TreeView节点添加信息以标识XML节点。