我正在使用ViewModel First方法,我无法从一个ViewModel导航到另一个ViewModel。
例如,我有两个文件夹,View和ViewModels,每个Page1View.xaml, Page2View.xaml
和Page1ViewModel.cs, Page2ViewModel.cs
都有两个文件
在我的应用程序发布中,我有下面的这一行,它完全正常。
DisplayRootViewFor<Page1ViewModel>();
现在点击Page1ViewModel
事件的按钮,当我添加下面的行时,我得到一个空引用异常。
_navigationService.NavitageToViewModel<Page2ViewModel>();
我在这里遗漏了什么吗?为了提供更多信息,这是一个UWP应用程序,我使用的容器是WinRTContainer
,我已经注册了两个ViewModel。
答案 0 :(得分:0)
您正在采用ViewModel优先方法。请注意,DisplayRootViewFor不会创建Frame控件,也不会设置NavigationService。
看看: https://github.com/Caliburn-Micro/Caliburn.Micro/issues/126
切换到View-first方法,或者在根视图中,设置一个将Frame传递给它的NavigationService:
container.RegisterNavigationService(rootFrame);