在c#中,我如何保存文本框,复选框等的值.在一个文件中
本文关键字:文件 一个 复选框 何保存 保存 文本 | 更新日期: 2023-09-27 18:18:36
在c#中,我如何保存复选框和单选按钮的checkstate值或文本框和richtextbox中的文本值在一个文件中?如果有可能的话?然后,我如何才能使用户将该文件加载回软件中,使所有值返回到保存它们的相同复选框和文本框中?
你可以这样做(基本):只需使用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文件读/写到不同的路径。
到这里是一个小的总结