1

我正在尝试使用一个非常通用的函数来设计我的 C# winform 应用程序,以自动遍历所有表单元素并将它们的状态/值保存在文本文件中,以便以后加载它。我希望它非常通用,以便在未来的项目中重用此代码很容易,因为它不会被严重束缚于细节。我要保存的表单元素是文本框、组合框、数据网格视图、列表框,仅此而已。我想保存他们的价值观和关于他们的一切。

我打算这样做的一种方法是遍历每个可能的表单元素,然后检测每个类型,然后创建相应的 c# 代码以重新创建其值('tboxmine.value="blue大象"'),然后将代码写入文件,以便我可以从文件中加载代码并使用 CSCcompiler 执行它。到目前为止,我的代码似乎无法正常工作,我怀疑这个编译器实际上是否我的应用程序中运行代码(我认为它可能正在创建一个新线程?),而且看起来可能有一个更直接的相对标准的方式来做到这一点。

4

1 回答 1

0

这似乎有点像反向“最佳实践”方法。如果您不了解数据绑定,我建议您调查一下。

基本上,您创建类来表示您的数据并使用数据绑定将控件与您的对象相关联。控件将自动显示正确的值并允许用户更改它。如果用户更改了值,您的对象会自动更新。

要保存数据,您将使用某种序列化将对象存储在文件中。加载时,您让序列化程序重建您的类结构,并且(最好的情况)您可以开始了。

这不完全是您所要求的,但我认为您可以很好地使用它;-)

注意:未保存控件的完整状态。例如,在文本框中,您的文本将被保存,但 BackColor 不会。

为了让您开始查看本教程: http: //www.codeproject.com/Articles/24656/A-Detailed-Data-Binding-Tutorial

于 2013-01-31T22:30:21.463 回答