Мое приложение закрывается при переходе на другую страницу на Windows Phone 8.1
Я использую MVVM Light Toolkit для создания приложения в Windows Phone 8.1. Когда я использую метод NavigateTo службы навигации, мое приложение закрывается, не выдавая ошибку. Эта проблема, кажется, случайно.
Я использую типичную архитектуру MVVM. Я использую ViewModelLocator, в котором я использую Unity, чтобы зарегистрировать все мои зависимости.
2 ответа
Решение
Вот (сокращенный) код реализации метода NavigateTo:
public virtual void NavigateTo(string pageKey, bool persist = true)
{
if (!_pagesByKey.ContainsKey(pageKey))
throw new ArgumentException(string.Format("No such page: {0}. Did you forget to call NavigationService.Configure?", pageKey), "pageKey");
((Frame)Window.Current.Content).Navigate(_pagesByKey[pageKey]);
}
Таким образом, этот метод может дать сбой только в том случае, если вы забыли настроить страницу, к которой пытаетесь перейти, или если метод Navigate фрейма WP не работает.
Попробуйте использовать Dispatcher с навигацией:
await Dispatcher.RunAsync( CoreDispatcherPriority.Normal, () => Frame.Navigate( typeof( SomePage ), "PageAgrs" ) );