【问题标题】:How to keep Text box data between application launches?如何在应用程序启动之间保留文本框数据?
【发布时间】:2020-05-24 05:27:06
【问题描述】:

我是编程新手,我正在尝试制作一个应用程序,其中我将有多个文本框用于与龙与地下城相关的不同事物。我想要的是当我关闭表单/应用程序时输入到文本框中的数据以保存,当我重新打开它时,之前的数据仍然存在。关于我将如何解决这个问题的任何想法?

想象一下,我有一个主菜单,其中包含通向多个表单的按钮。每个表格就像一个简单的记事本。假设我在表格 1 中输入数据,然后按下按钮返回主菜单或关闭应用程序。然后我重新加载并返回表格 1,我之前输入的所有数据仍然存在并准备好让我添加到其中。这就是我想做什么的想法,如果这使得......

【问题讨论】:

标签: c# winforms


【解决方案1】:

这是基本的想法。

双击解决方案资源管理器中的设置:

为要保存的值起一个名称,然后在名称下输入。这里我使用'TextBoxValue'

现在添加代码以在您打开程序时对其进行初始化,并在程序更改时将其保存。

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        // Set the text to the last saved value
        InitializeSavedValues();
        // Notify me when textBox1 changes and...
        textBox1.TextChanged += textBox1_TextChanged;
    }

    private void InitializeSavedValues()
    {
        textBox1.Text =  (string)Properties.Settings.Default["TextBoxValue"];
    }

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        //... save the new value when it does
        Properties.Settings.Default["TextBoxValue"] = ((TextBox)sender).Text;
        Properties.Settings.Default.Save();
    }
}

(现在尝试输入一些文本并重新启动应用程序。)

在您的特定示例中,您可以通过这种方式保存表单数据,甚至可以保存应用关闭时打开的“哪个”表单(例如)。

【讨论】:

  • 我会试试这个。谢谢!
  • 当然!正如您可以想象的那样,有很多方法(有些是复杂而复杂的)来保持应用程序的状态。由于您自称是新程序员,我认为您的问题应该在“新程序员持久保存文本框的最简单方法是什么”的狭隘范围内得到自己的答案,所以让我知道它是怎么回事!
  • 是的,它就像一种魅力,而且比我想象的要简单得多。非常感谢!
  • 嘿 pip 你提到了试图管理龙与地下城相关的东西。如果你有兴趣,我有一个想法给你发电子邮件 support@ivsoftware.com thx。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多