【问题标题】:Winforms/C#: Store/Retrieve (Persist) Content of TextBoxes between 2 RunsWinforms/C#:在 2 次运行之间存储/检索(持久)文本框的内容
【发布时间】:2012-10-17 05:34:11
【问题描述】:

有没有一种最简单的方法来简单地告诉 Winforms(主要是 TextBoxes)保留其所有内容 e. G。到一个文件,而我不必遍历所有控件?

我在 WPF 应用程序中看到了这一点,但不知道是否存在开箱即用的最简单方法。

同样,循环遍历每个控件是可能的,但似乎.. 工作量太大?

序列化可能有用吗?

【问题讨论】:

  • 也许您可以维护一个字符串生成器,在其中将每个控件值附加到它。而当你想将它推送到文件时,只需推送这个字符串值。这样你就不需要循环所有的 ctrls。我猜这不是最好的解决方案!
  • :) 是的,还是有点太手动了。
  • 仍然需要遍历字符串来设置控件的值。有数据绑定

标签: c# winforms textbox persist


【解决方案1】:

您可以在表单设计器中设置您的ApplicationSettingsPropertyBinding,为其分配一个字段名称,然后当您关闭您的应用程序时,您可以执行此操作,这将保存您对应用程序应用程序中所有绑定文本框的所有更改.config 文件。

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    Properties.Settings.Default.Save(); 
}

【讨论】:

    【解决方案2】:

    您可以使用IsolatedStorageFile 来保存和加载数据。如果您可以将文本框绑定到具有每个文本框属性的类,则可以序列化该类并将其存储为 IsolatedStorageFile。

    然后您可以从 IsolatedFileStorage 进行反序列化,并且控件应绑定到类属性中存在的值。

    有关数据绑定到类的详细信息,请参阅此问题的答案:Data Binding to an object in C#

    请参阅this,了解有关保存和加载到独立存储文件的更多详细信息

    【讨论】:

      猜你喜欢
      • 2011-08-24
      • 2011-10-04
      • 2011-12-20
      • 1970-01-01
      • 1970-01-01
      • 2013-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多