我正在使用Windows Template Studio创建一个简单的UWP应用。我正在为多个页面使用内置的MVVM模板。 我在应用程序上有2页。两个页面都包含几个文本框,用户可以在其中输入一些值。数据绑定在两个页面上都可以正常工作。我的问题是: 当我导航到页面2并返回到页面1时,文本框中的值将返回到原始初始化值,而不是最后更新的值。
我希望当我从第2页返回第1页时,第1页上的值应该是最近更新的值。 我已经看了很多教程,但是找不到完整的解决方案。 我刚刚开始使用UWP和MVVM,因此可能很难对一些基本概念有所了解。 在这方面的任何帮助都将受到赞赏。
答案 0 :(得分:0)
您需要考虑将这些TextBox值保存在ApplicationData中。例如ApplicationData.LocalSettings。
当您从第1页导航到第2页时,可以将值保存在localSettings中。
var localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
localSettings.Values["exampleSetting"] = "Hello Windows";
当您从第2页回到第1页时。您可以从LocalSettings获取值。
Object value = localSettings.Values["exampleSetting"];
有关更多详细信息,请参见Application data sample。
答案 1 :(得分:0)
看看NavigationCacheMode
https://docs.microsoft.com/en-us/uwp/api/windows.ui.xaml.controls.page.navigationcachemode
这应该允许您缓存输入的数据,并且在导航到不同框架时将保持不变