假设我有一个代码
protected override void OnNavigatedTo(NavigationEventArgs e)
{
var userInfo = SettingsManager.Read<User>(SettingsManager.UserInfoSetting);
if (e.NavigationMode == NavigationMode.Back && userInfo == null)
{
_mainViewModel.NavigationService.GoBack();
}
if (e.NavigationMode == NavigationMode.New && userInfo == null)
{
_mainViewModel.NavigationService.NavigateTo(new Uri(ViewModelLocator.SettingPageUrl, UriKind.Relative));
}
base.OnNavigatedTo(e);
}
当用户第一次运行应用程序时,他将被重定向到设置页面,现在它工作得很好。如果用户不想提供他的信息,他可以按后退按钮,在这种情况下我想跳过应用程序的主页并退出应用程序。如果我运行收到的代码InvalidOperationException
Cannot go back when CanGoBack is false.
该GoBack()
方法调用PhoneApplicationFrame.GoBack()
方法返回。