我正在尝试在wiew模型之外的Windows 8.1 Universal应用程序中调用 NavigateTo
. 我已经尝试过:
var dispatcher = Window.Current.Dispatcher;
await dispatcher.RunAsync(
CoreDispatcherPriority.Normal,
async () => await NavigateToRegistrationPage()
);
结果抛出异常
对象引用未设置为对象的实例 .
我还尝试使用Messenger通过messenger消息调用导航窗体ViewModel:
Messenger.Default.Send<MessengerEvents.NavigateToRegistrationPage>(
new MessengerEvents.NavigateToRegistrationPage()
);
Public LoginViewModel //...
MessengerInstance.Register<MessengerEvents.NavigateToRegistrationPage>(
this,
(message) => GoToRegistrationPage()
);
也不起作用 .
调用目标引发了错误
我无法直接在viewmodel中调用导航(在没有信使直接从视图模型调用的情况下进行检查,因为导航是为响应服务器消息而执行的) .
private void GoToRegistrationPage()
{
NavigationService.NavigateTo(ResourceService.CHOOSE_REGISTRATION_PAGE);
}
1 回答
问题解决了,我试图从MVVM Locator中获取调度程序,将调度程序移到app.xaml.cs并完美运行