Навигация по кадрам в среде выполнения Windows не работает

У меня есть приложение среды выполнения Windows, которое использует элемент управления фреймом для навигации. У меня проблема с кнопкой "назад". Учти это:

MainPage (это страница запуска приложения) ListPage (на этой странице отображается список) DetailsPage (показывает сведения о выбранном элементе на странице списка.

Когда я нажимаю «Назад» на странице сведений, он переходит на главную страницу вместо перехода на страницу списка. Любая помощь будет оценена по достоинству.

Спасибо,


person sidy3d    schedule 06.05.2014    source источник


Ответы (1)


Я подозреваю, что проблема связана с двойной навигацией — ваш frame.GoBack() вызывается дважды — один раз NavigationHelper (который подписывается на HardwareButtons.BackPressed) и дважды EventHandler, подписанным в App.xaml.cs.

Удалите подписку из App.xaml.cs и проверьте, помогло ли это:

public App()
{
    this.InitializeComponent();
    this.Suspending += OnSuspending;
  //  HardwareButtons.BackPressed += HardwareButtons_BackPressed; // this line also fires frame.GoBack() (as default project template)
}
person Romasz    schedule 06.05.2014
comment
@ sidy3d Вы можете поделиться кодом? В моем примере это решило проблему. Есть ли шанс, что вы не отписали Eventhandler или не вызвали frame.GoBack() несколько раз? - person Romasz; 06.05.2014
comment
@sidy3d И здесь вы можете скачать мой простой пример с проблемой, которую я упомянул. Может быть, это поможет. - person Romasz; 06.05.2014