竞争ItemsSource绑定和SelectedItem绑定

时间:2017-05-09 15:50:19

标签: mvvm uwp

我有一个基于Template10 Minimal的UWP应用程序,用于收集客户数据;某些视图具有组合框/列表框控件,其ItemsSource依赖于另一个组合框/列表框控件的选定项。防爆。将根据所选州填充城市列表的州和城市。

这在第一次加载时工作正常但是当用户返回到视图并且我尝试恢复其初始选择时,它有时无法设置所选城市。我认为这是因为在设置了viewmodel的SlectedCity属性之后,状态的SelectionChanged(清除并重新填充城市列表)将触发。

什么是正确的方法来处理这个问题?感觉它是一个计时问题,取决于是否首先设置了列表的itemsource,或者是否首先设置了selecteditem属性。

1 个答案:

答案 0 :(得分:0)

这取决于您的要求。基本上我认为你错过的是导航缓存。在您想要在导航时保留数据的页面中,在其构造函数中将导航缓存模式设置为启用。为此,请在构造函数后面的页面代码中(假设您的页面名称为MainPage.xaml,因此在构造函数中

Public MainPage ()
{
    NavigationCacheMode = NavigationCacheMode.Enabled;
 }

请注意,因为您使用的是模板10,所以app.xaml.cs 在构造函数中,您将CacheMaxDuration设置为settings.cacheMaxDuration

我很抱歉格式化,我正在使用移动设备。如果我能进一步帮助,请告诉我