Treeview选择的节点值路径或Datapath为具有相同变量名称的节点返回相同的路径

时间:2016-05-16 16:27:07

标签: xpath treeview

我正在尝试从绑定到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动态完成,如果我错了请纠正我。

或者有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我认为您将TreeView与XML文档混淆。单击TreeView时,需要单击的节点提供足够的信息来标识XML节点。您可以使用Tag属性向TreeView节点添加信息以标识XML节点。