保存Winform表单控件状态的最佳方法是什么?

时间:2009-10-08 22:27:39

标签: c# .net winforms serialization

如果您的应用有1个表单,则该表单有n个组框,每个框都包含任意数量的控件。您如何保存所有这些控件的设置?

我担心的一些事情是:

  1. 我不需要保存像BackColor这样的属性,因为用户不会更改它们。

  2. 我需要一种方法,这样当我添加新属性或从这些自定义控件中删除一些属性时,他们没有问题加载设置。

  3. 如何做到最好?

    我在考虑使用序列化?如果那会更好,建议使用哪种序列化?二进制/ XML /?欢迎举例。

2 个答案:

答案 0 :(得分:1)

我会使用数据绑定将所有相关控件的内容绑定到自定义(非ui)类,然后我将序列化(XML或二进制)该类。我至少在开发过程中会选择XML序列化,因为它会在调试时帮助你(你可以随时查看序列化文件)。

答案 1 :(得分:0)

我想说如果你要存储一个可以改变属性的模型,你可以看一下Custom Serialization。它在文章的最后讨论了如何为模型中的更改存储版本控制信息,以帮助进行反序列化。