动态添加文本框值到XML文件

本文关键字:XML 文件 添加 文本 动态 | 更新日期: 2023-09-27 17:50:18

我想动态创建一个XML文件,其中包含表单中所有textbox的节点及其值。

的例子:

  var xmlNode =
       new XElement("TextBoxes",
                    new XElement("TextBox",
                        new XElement("name", textBox1.Name.ToString())
                    )

我试过:

foreach (TextBox text in this.Controls.OfType<TextBox>())
        {
            var xmlNode =
            new XElement("TextBoxes",
                    new XElement("TextBox",
                        new XElement("name", text.Name.ToString())
                    )
                );
            xmlNode.Save("Test.xml"); 
        }    

有什么建议吗?

动态添加文本框值到XML文件

您正在尝试为每个文本框创建一个文件,而不是包含所有文本框值的一个文件。因此,首先在循环外声明xmlNode,然后保存它:

var xmlNode = new XElement("TextBoxes");
foreach (TextBox text in this.Controls.OfType<TextBox>())
    {
        xmlNode.Add(new XElement("TextBox",
                    new XElement("name", text.Name.ToString())
                )
            );
    }  
xmlNode.Save("Test.xml");