如何使这个数组+函数工作?

时间:2012-08-28 22:19:29

标签: c# xml winforms file

我需要帮助我的阵列希望有人可以告诉我如何做到这一点...我是c#winforms的新手

这是我的数组运行的函数,我正在尝试将数组发布到XML文件

    // ------------------- Functions
    static void XML_Array(string Data_Array)
    {
        String xmlfile = "/XMLFiles/Settings_Data.xml";

        XmlTextWriter xwriter = new XmlTextWriter(xmlfile, Encoding.Unicode);

        xwriter.WriteStartDocument();

        xwriter.WriteStartElement("XMLFILE");

        foreach (KeyValuePair<string, string> kvp in Data_Array)
        {
            String Element_Name = kvp.Key;
            String Element_Value = kvp.Value.ToString();

            xwriter.WriteStartElement(Element_Name);
            xwriter.WriteString(Element_Value);
            xwriter.WriteEndElement();
        }

        xwriter.WriteEndDocument();
        xwriter.Close();

    }

这是我的数组,这里我要做的是当我按下button2在我的函数上发送数组,以及在XML文件中添加数组数据的函数

    private void button2_Click(object sender, EventArgs e)
    {
        Dictionary<string, string> Data_Array = new Dictionary<string, string>();
        Data_Array.Add("Name", "textBox3.Text"); // Alex
        Data_Array.Add("Year", "textBox4.Text"); // 1988

        XML_Array(Data_Array);
    }

更新 如果我的数组是

,我该怎么做
Dictionary<string, string> Data_Array = new Dictionary<string, string>();
Data_Array.Add("Name", textBox3.Text); // Alex
Data_Array.Add("Year", textBox4.Text); // 1988

Data_Array.Add("Birthday", new Dictionary<string, string>());

生日添加日,月

1 个答案:

答案 0 :(得分:1)

将方法的签名更改为

static void XML_Array(Dictionary<string, string> Data_Array)

因为它不是string而是Dictionary

正如varg和Austin所评论的那样,你应该考虑重命名变量,因为当参数是名称Data_Array时它会让人感到困惑,但实际上它是Dictionary什么是完全不同的集合类型。您可能希望添加现有Text控件的TextBox属性,而不是字符串文字(带引号)"textBox3.Text"

Data_Array.Add("Name", textBox3.Text); // Alex
Data_Array.Add("Year", textBox4.Text); // 1988

TextBox3TextBox4也是新名字的好选择。