Caliburn Micro GoBack到上一页实例WinRT

时间:2014-12-29 13:19:53

标签: c# windows-runtime windows-phone-8.1 caliburn.micro

我在Windows Phone 8.1(WinRT)应用程序上使用Caliburn.Micro.Core.2.0.1

我的所有ViewModel都以Screen为基础。

在我的MainView(Model)我可以使用

导航到使用CM的INAVigationService的SettingsView(Model)
private readonly INavigationService _navigationService;
public void Navigate()
{
    _navigationService.NavigateToViewModel<SettingsViewModel>(_param);
}

然后使用硬件后退按钮

public void GoBack()
{
   _navigationService.GoBack();
}

我可以导航回MainView(模型)。

有效;但是,它不能像我预期的那样工作或希望它起作用。

当调用GoBack(或后退按钮)时,它会生成MainView(Model)新实例。我希望它返回MainView(Model)从实例导航。

我尝试将MainViewModel注册为Singleton,这使得ViewModel成为单身人士(并引入了一些有趣的问题);但View仍在重新创建。

知道如何让导航返回从实例导航

1 个答案:

答案 0 :(得分:1)

尝试将视图的NavigationCacheMode属性设置为Enabled

有关此问题的详细信息,请访问this blog post