保存winform控件值c#

Nat*_*ath 5 c# winforms

我有一个 Winform C# 中的应用程序。我需要保存用户在表单控件(例如文本框、日期时间选择器等)中输入的值。

这样做最好的办法是什么?再次启动程序时将读取这些内容。我还需要将值保存在一个数据网格中,该数据网格可能只有大约 20 行。

任何帮助/指示将不胜感激。

Ale*_*tic 5

一种方法是使用 ini 文件、xml 或一些基于文件的数据库(如 sqlite)创建您自己的“状态保存”机制。但我觉得除非真的需要,否则这很糟糕。

另一种方法是使用 WinForms 引擎来保存控件的值。每个控件都有自己的应用程序设置属性。您可以使用该属性创建新的应用程序设置值并将该值分配给 Control 的某些属性。这将是快速而优雅的解决方案,并且它可以保存每个用户的设置。

对于未分配给控件属性的设置,您可以使用

Settings.Default.SomeYourProperty
Run Code Online (Sandbox Code Playgroud)

要访问该属性,您可以使用

Settings.Default.Save()
Run Code Online (Sandbox Code Playgroud)

来保存它。这对于您的小型数据网格可能很有用(因为您无法将数据网格值自动分配给应用程序设置属性,您希望序列化它们然后手动保存)。看看这里


Sha*_*hai 0

一种方法是创建自己的 INI 类并将每个控件的数据保存在文本文件中

这是一个很好的例子。