2

winform用 c# 开发了一个项目。我用过listbox,datagridviewtextboxes 。我想要做的是,在执行过程中如果用户意外关闭了winform,我们需要保存这些数据并在用户重新启动项目时将其返回。为此,最好使用数据库或任何其他选择?如果我们使用数据库,我们如何动态存储这些数据?那更好用sqlite吗?任何人都可以给我一个想法吗?

4

3 回答 3

3

这是一个非常普遍的问题。您需要以某种方式自行序列化状态,但这取决于项目中的许多事情。

或者,您也可以查看设置

也可能有帮助

于 2013-09-03T09:35:15.117 回答
2

您是否询问用户何时关闭单个表单或完全关闭应用程序?

如果您只是想关闭单个表单,您可以将表单数据存储在表单类之外的类中。使用表单的属性创建 Main 的子类,并在打开表单之前将其实例化。它可能应该实现 IDisposable 并在不需要后调用 GC。

关闭应用程序将需要序列化并保存到文件和/或数据库。

于 2013-09-03T09:49:08.500 回答
2

我也不得不做这样的事情,我认为最好使用:这是使用设置的一种简短方法,仅供您使用 c:

private void Form_Load(object sender, EventArgs e)
    {
        if (Properties.Settings.Default.SettingName != "")
        {
            TextBox1.text = Properties.Settings.Default.SettingName;
            //And so on
        }
    }



    private void Form_FormClosing(object sender, FormClosingEventArgs e)
    {
        Properties.Settings.Default.SettingName = //things you want to save;
        //Do it for the rest aswell
    }

“Blockquote这是一个非常普遍的问题。您需要以某种方式自行序列化状态,但这取决于您项目中的许多事情。

或者,您也可以查看设置

这也可能有帮助”~Kyle

PS:我的声誉还不够高,无法评论,所以这就是为什么我不得不这样做。

于 2013-09-06T06:17:50.257 回答