在c#中,我如何保存文本框,复选框等的值.在一个文件中

本文关键字:文件 一个 复选框 何保存 保存 文本 | 更新日期: 2023-09-27 18:18:36

在c#中,我如何保存复选框和单选按钮的checkstate值或文本框和richtextbox中的文本值在一个文件中?如果有可能的话?然后,我如何才能使用户将该文件加载回软件中,使所有值返回到保存它们的相同复选框和文本框中?

在c#中,我如何保存文本框,复选框等的值.在一个文件中

你可以这样做(基本):只需使用xml来存储数据,然后从xml中读取数据以访问对象数据。

1)。为数据

构建一个类
[Serializable()]
[XmlRoot("MyData", Namespace = "")]
public class MyData
{
    public MyData() { }
    public bool checkBox1State { get; set; }
    public bool checkBox2State { get; set; }
    public string radioGroupSelected { get; set; }
    public string button1Text { get; set; }
    ...
}

然后构建两个方法来读写xml文件:

public static class MyDataWorker
{
    public static MyData ReadMyData()
    {
        XmlSerializer reader = new XmlSerializer(typeof(MyData));
        System.IO.StreamReader file = new System.IO.StreamReader("MyData.xml");
        MyData data = new MyData();
        data = (MyData)reader.Deserialize(file);
        file.Close();
        return data;
    }
    public static void WriteMyData(MyData data)
    {
        XmlSerializer writer = new XmlSerializer(typeof(MyData));
        System.IO.StreamWriter file = new System.IO.StreamWriter("MyData.xml");
        writer.Serialize(file, data);
        file.Close();
    }
}

用法:

// Create data object instance
MyData data = new MyData();
// Fill Data from controls
data.checkBox1State = checkBox1.Checked;
...
// Write File to XML
MyDataWorker.WriteMyData(data);
// Read File to MyData object
MyData data = MyDataWorker.ReadMyData();

进一步的步骤可以是,扩展带有参数的函数,将特定的XML文件读/写到不同的路径。

到这里是一个小的总结