Caliburn Micro GoBack到上一页实例WinRT

我在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(_param); } 

然后使用硬件后退按钮

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

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

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

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

我尝试将MainViewModel注册为Singleton,这使得ViewModel成为一个单例(并引入了一些有趣的问题); 但仍然可以重新创建View

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

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

有关此问题的详细信息,请访问此博客文章 。