[英]How to edit XML node using combobox (VB.Net)
我正在嘗試編輯收入節點,並使用當前代碼實現了這一點。 但是,所有其他元素(RptMenu和Icon)都將被刪除。 我希望它們保留在XML文件中,並且只將Income更改為文本框設置的內容。 組合框用於選擇要更改的MenuItem(收入,庫存等)。
XML代碼:(為了簡化起見,沒有包含更多菜單項)
<ReportMenu>
<RptMenu category="Menu">
<MenuItem>Income</MenuItem>
<Icon>C:\Documents\Visual Studio 2008\Projects\Menu\Menu\Resources\IncomeImage.jpg</Icon>
</RptMenu>
<RptMenu category="Menu">
<MenuItem>Stock</MenuItem>
<Icon>C:\Documents\Visual Studio 2008\Projects\Menu\Menu\Resources\IncomeImage.jpg</Icon>
</RptMenu>
</ReportMenu>
vb.net代碼:
Private Sub btnEditCategory_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditCategory.Click
Dim xd As New XmlDocument()
xd.Load("C:\Documents\Reports.xml")
Dim newNode As XmlElement = xd.CreateElement("MenuItem")
newNode.InnerText = txtAddCategory.Text
For Each oldNode As XmlNode In xd.SelectNodes("ReportMenu/RptMenu")
If oldNode.SelectSingleNode("MenuItem").InnerText = cmbCategory.Text Then
oldNode.ParentNode.ReplaceChild(newNode, oldNode)
End If
Next
xd.Save("C:\Documents\Reports.xml")
End Sub
嘗試這個:
<?xml version="1.0" encoding="utf-8"?>
<Profiles>
<Name>
</Name>
</Profiles>
要么
Dim doc As XDocument = XDocument.Load("Profiles.xml")
ComboBox1.DataSource = (From element In doc.Descendants("Name") Select element.Value).ToList()
演示:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.