Кнопка «Назад» в Windows Phone 8.1 всегда переходит на главный экран

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


person Ghazanfar Khan    schedule 23.07.2014    source источник
comment
Вы ориентируетесь на Silverlight или WinRT? Вы используете NavigationHelper? Вы подписались на HardwareButtons.BackPressed?   -  person Romasz    schedule 23.07.2014
comment
WinRT я просто проверяю поведение по умолчанию.   -  person Ghazanfar Khan    schedule 23.07.2014
comment
Можете ли вы предоставить пример кода   -  person Ghazanfar Khan    schedule 23.07.2014
comment
Какой пример кода? Я подумал, что вы можете предоставить некоторые :) Пожалуйста, проверьте свой app.xaml.cs для обработчика событий HardwareButtons_BackPressed, также проверьте, не подписались ли вы где-то на это событие в другом месте, особенно проверьте, есть ли у вас папки с именами Common и NavigationHelper.cs там. Если у вас их нет, вы можете добавить Basic Page в свой проект, и это добавит несколько вспомогательных файлов.   -  person Romasz    schedule 23.07.2014
comment
хорошо, я понял, что спасибо.   -  person Ghazanfar Khan    schedule 23.07.2014


Ответы (2)


Да, вам нужно переопределить OnBackKeyPress телефона, чтобы указать, куда должна перемещаться кнопка «Назад».

person ΩmegaMan    schedule 23.07.2014

AddHandler HardwareButtons.BackPressed, AddressOf HardwareButtons_BackPressed

Private Sub HardwareButtons_BackPressed(sender As Object, e As BackPressedEventArgs)
    e.Handled = True
    YourGoBackCode()
End Sub

И то же самое в С#

HardwareButtons.BackPressed += HardwareButtons_BackPressed;

private void HardwareButtons_BackPressed(object sender, BackPressedEventArgs e)
{
   e.Handled = true;
   YourGoBackCode();
}
person JumpyStackOverflow    schedule 25.07.2014
comment
Я использую С# как язык - person Ghazanfar Khan; 25.07.2014
comment
VB должен быть довольно простым для понимания и преобразования в С#. Я всегда думал, что каждый программист на С# будет лучше разбираться в языках программирования, чем мы, использующие только VB. В любом случае, я также обновлю ответ с помощью С#. - person JumpyStackOverflow; 26.07.2014