【发布时间】:2016-06-06 12:18:39
【问题描述】:
我想让我的 Windows 窗体 (System.Windows.Forms.Form) “有状态” - 也就是说,它(或其中的字段)应该保留我输入的数据,即使我关闭并重新打开应用程序,如果可能的话,即使应用程序中断(未捕获的异常)。
实现这一点的最简单方法是什么?是否有一些开箱即用的支持(可能无需编写一行代码)还是我必须自己实现这样的功能?
【问题讨论】:
-
只要不关闭窗口就不会丢失表单的成员值。如有必要,使用 FormClosing 事件将其隐藏并使用
e.Cancel = true;取消关闭尝试或使用对话框,ShowDialog() 隐藏窗口但不释放它。 -
@HansPassant 如何在关闭的应用程序(即 TaskManager)中存活?
-
当然不是。如果数据需要在程序结束后继续存在,您必须将数据保存到磁盘。有很多方法可以做到这一点,你得到的答案肯定是一种方法。当用户使用任务管理器杀死您的应用时保存数据既不切实际又危险。