C#删除xml指定节点

时间:2013.09.06 发布人:芷文hldzqig

C#删除xml指定节点

已解决问题

谷歌芷文hldzqig用户在2013.09.06提交了关于“瓦尼C#删除xml指定节点”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2024-11-13T10:25:28。windows窗体中有两个按钮控件(添加用户)和(删除用户),一个listview控件,用来显示用户信息,点击添加用户(btnAddUser)出一个窗体,显示要添加的信息,然后将信息存储到.xml文件中,前面的都已经实现了。现在就差(删除用户)的同时删除掉.xml文件中的信息,要求是随意选中listview控件中的项点击删除可以删掉.xml文件中的信息。求大神指导!!!希望大家能够帮助她。

详细问题描述及疑问:windows窗体中有两个按钮控件(添加用户)和(删除用户),一个listview控件,用来显示用户信息,点击添加用户(btnAddUser)出一个窗体,显示要添加的信息,然后将信息存储到.xml文件中,前面的都已经实现了。现在就差(删除用户)的同时删除掉.xml文件中的信息,要求是随意选中listview控件中的项点击删除可以删掉.xml文件中的信息。求大神指导!!!期待您的答案,你无异于雪中送炭,让我感激涕零 !

希望以下的回答,能够帮助你。

第1个回答

用户名:dwmg2j7bre9  

根据你的贴图可以看出你的记录只有一个唯一键值,用户名,那么如果想删除记录必须找到这个唯一键值的在xml元素中对应的属性,通过这个属性确定这个元素,然后删除这个元素。我们可以通过linq语句来操作。
袁乎衣重理夫销胡正促下面的代码将用来操问答作xml
stringxmlpath="你xml的地址";
XDocumentxdoc=XDocument.Load(xmlpa烈须题角现意th);
XElementxele=xdoc.Root.Element("元素名");
//如果你要根据属性来查询的话,这么用
IE**merable<XElement>xeles=fromxelinxdoc.Root.Descendants()
wherexel.Attribute("唯一键值的属性名").Value=="唯一键值"
selectxel;
XElementxelee=xeles.Fi司修rstOrDefau世游女lt();
xelee.Remove();
差陈业喜那么这样就删除了。
至于你内足片格医七诗赵服动的唯一键值如何获得,我想尼附害黑较老印这个很好办,你用的是l充济式那激病istView,通过l胡钟掌业蛋广行istview的selected属性就可以得到你所选择行的行索引号,通过索引号就自然可以读取到所在行的第一列的值。