2012-07-26 63 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

相关问题