2012-07-26 92 views
0

我需要添加一個新項目。這個新項目將作爲孩子添加。但它似乎將所有數據輸入組合在一個子項中。下面是我的代碼。在appendchild xml c中添加新項目#

XmlDocument xmlDoc = new XmlDocument(); 
        xmlDoc.Load("C:\\Users\\HDAdmin\\Documents\\SliceEngine\\SliceEngine\\bin\\Debug\\saya.xml"); 
XmlElement contentElement = xmlDoc.CreateElement("Name"); 
XmlElement itemEl = xmlDoc.CreateElement("item"); 
XmlText xmlText = xmlDoc.CreateTextNode(textBox1.Text.Trim()); 
itemEl.AppendChild(xmlText); 
contentElement.AppendChild(itemEl); 
xmlDoc.DocumentElement.AppendChild(contentElement);     

XmlElement thumbEl = xmlDoc.CreateElement("thumb"); 
XmlText xmlThumb = xmlDoc.CreateTextNode(textBox2.Text.Trim()); 
itemEl.AppendChild(xmlThumb); 
contentElement.AppendChild(thumbEl); 
xmlDoc.DocumentElement.AppendChild(contentElement); 
        xmlDoc.Save("C:\\Users\\HDAdmin\\Documents\\SliceEngine\\SliceEngine\\bin\\Debug\\saya.xml"); 

輸出出現

<Name> 
<item>werasd</item> 
<thumb/> </Name> 

但輸出應該出現

<Name> 
    <item>wer</item> 
    <thumb>asd<thumb/> 

我應該怎麼辦?

回答

3

使用XmlElement.InnerText。它獲取或設置節點的連接值。所以,你的代碼應該是這樣的:

XmlText xmlThumb = xmlDoc.CreateTextNode(textBox2.Text.Trim()); itemEl.AppendChild(xmlThumb);

// new code 
thumbEl.InnerText = textBox2.Text.Trim(); 
+0

感謝你感謝您! @Ria – 2012-07-26 05:19:21

+0

+1正確答案... – 2012-07-26 05:21:09

1

你追加到錯誤的項目改變這種

itemEl.AppendChild(xmlThumb); 

這個

thumbEl.AppendChild(xmlThumb); 
+0

+1正確答案... – 2012-07-26 05:21:16