2010-04-24 31 views
8

如何在TextBox中保存用户推测值? (WPF XAML)所以在我的xaml窗口中我有一个TextBox。用户使用我的应用程序输入一些数值并按下按钮或提示Enter。他关闭了一个应用程序。再次打开它。如何让他的输入保存在WPF中的TextBox中?如何在TextBox中保存用户推测值? (WPF,XAML)

回答

19

您可以使用内置的.net设置。

在visual studio中,右键单击您的项目并选择添加新项目。在对话框中选择“设置文件”,并为其命名为“MySettings”。 Visual Studio将创建几个文件,其中包括MySettings类以及一些静态方法,以便您访问您的设置。

如果你打开这个文件,你会得到一个很好的网格UI,它允许你输入一些设置,设置它们的类型(在这种情况下为String)并设置一个默认值。它还允许您指定它们是应用程序还是用户设置。

  • 应用程序设置:应用程序启动后无法修改。只能通过编辑一个xml .config文件进行配置。对于运行该应用的每个用户来说都是一样的。
  • 用户设置:可以在应用程序运行时进行修改和保存。将存储在用户documents and settings\username\local settings文件夹中。对于每个用户可以不同。

对于您所描述的内容,请为范围选择“用户”。

现在,在代码中访问该值:

// Load the value into the text box. 
txtBox1.text = MySettings.Default.SomeSetting; 

,并保存更改:

// Update the value. 
MySettings.Default.SomeSetting = txtBox1.text; 

// Save the config file. 
MySettings.Default.Save(); 

有一个关于这一切在MSDN上here更多的信息,并且有更多的信息ApplicationSettingsBase class here

(显然,如果您使用的MVVM,或任何其他UI模式可以适应这个代码的设置值加载到你的模型/的ViewModels在适当的时机,而不是直接在文本框中)

+0

但它不会保存数据,如果应用程序重新启动...? – 2015-02-18 16:08:16

+0

@PaulMartinez您需要在应用关闭时手动调用MySettings.Default.Save()以保存更改。 – 2015-02-19 12:41:54