如何跨页面/窗口存储用户输入数据,并在没有数据库的页面中显示所有数据



我正在编写一个 wpf 应用程序,该应用程序可能有几个页面供用户在文本框中输入信息或勾选提供的复选框。我需要存储所有这些数据,并在用户回答完所有必需的问题后将其打印出来。

这样做的最佳方法是什么?我是否创建一个类文件来存储数据,创建一个全局数组来存储这些项目,或者有更好的方法?谢谢。

我发现存储全局变量的最简单方法是使用应用程序的设置,请按照以下步骤操作:

  1. 访问应用程序设置的菜单。 打开 WPF 项目并转到"项目\[应用程序名称] 属性..."然后单击"设置"选项卡。

  2. 创建一个设置并将其命名为"GlobalText",确保它设置为字符串类型和用户范围,并将值留空,您现在可以关闭应用程序设置的窗口,确保保存工作。

  3. 现在,要为您刚刚创建的设置分配一个值,只需使用以下代码:

    Properties.Settings.Default.GlobalText = TxtBox1.Text;
    
  4. 现在,要读取已存储的值,请使用以下代码:

    TxtBox1.Text = Properties.Settings.Default.GlobalText;
    
  5. 如果要保存值,请使用以下代码:

    Properties.Settings.Default.Save();
    

创建一个类来保存用户信息,并通过构造函数注入将其传递给每个视图(如果使用 MVVM,则最好传递给视图模型(。这可能是最简单的方法。

根据页面的简单程度,您可能会对所有页面使用相同的ViewModel,这将使它更简单。

最新更新