繁体   English   中英

使用datagrid删除整个xml节点

[英]deleting entire xml node with datagrid

我具有以下xml结构:

<systemtest>
    <test id="0">
        <name>Test One</name>
    </test>

    <test id="1">
         <name>Test Two</name>
    </test>
</systemtest>

该名称将显示在数据网格的1ste列中,在第二列中有一个带删除按钮的buttoncolumn。

我该如何精确地使用xpath并导航到当前节点,让我们说test id =“ 0”并删除它(包括名称)?

目前尚不清楚我如何对这种方法说他必须准确删除哪一行。

 XmlDocument XMLDoc = new XmlDocument();
    XMLDoc.Load(XMLFile);
    XPathNavigator nav = XMLDoc.CreateNavigator();
    nav.SelectSingleNode("...."); //??

nav.DeleteSelf(); //will this do the trick?

同样,id是在单独的类中生成的,上面的方法应该在其中。

    var node = nav.SelectSingleNode("/testsystem/test[@id='0']");
    node.DeleteSelf();
    XMLDoc.Save(XMLFile);

这确实删除了第一个项目,但在第二个项目上导致了崩溃。 我如何将其转换为变量,该变量取决于我在数据网格中按下的按钮?

提前致谢。

var node = doc.SelectSingleNode("/systemtest/test[@id='0']");
node.ParentNode.RemoveChild(node);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM