Перезвони в windows phone 7 - PullRequest
       0

Перезвони в windows phone 7

1 голос
/ 07 сентября 2011

Мне нужно вызвать команду кнопки назад в какой-то момент в моем приложении программно, так что это за команда для этого.
Проблема в том, что мне нужно, чтобы приложение закрывалось, когда пользователь нажимает обратно со второй страницы,следовательно, мне нужно вызвать команду «назад» при переходе на первую страницу для выхода.
Я искал в Интернете и обнаружил, что не существует систематического способа выхода из приложения в коде, поэтому любые предложения?
Спасибо,

Ответы [ 3 ]

4 голосов
/ 07 сентября 2011

Позвоните NavigationService.RemoveBackEntry(); на OnNavigatedTo второй страницы. Это удалит первую страницу из стека навигации, и если пользователь нажмет клавишу «Назад», приложение закроется.

Внимание! Звоните, удаляйте только один раз! (многозадачные вызовы OnNavigatedTo несколько раз)

private bool removed = false;
public override void OnNavigatedTo(...)
{
    if (!removed) 
    {
        removed = true; 
        NavigationService.RemoveBackEntry();
    }

(только WP 7.1 [Mango])

1 голос
/ 12 февраля 2012

Я обнаружил, что это работает для меня, используя Windows Phone SDK 7.1 (манго):

private bool removeBack = true;

private void PhoneApplicationPage_BackKeyPress ( object sender , System . ComponentModel . CancelEventArgs e )
{
    if ( removeBack )
    {
        this . removeBack = false;

        if ( NavigationService . CanGoBack )
        {
            this . NavigationService . RemoveBackEntry ( );
        }
    }
}
0 голосов
/ 07 сентября 2011
NavigationService.GoBack();

Это может быть вызвано на странице, чтобы вернуться снова - если это первая страница, с которой выйдет ваше приложение, вы не можете принудительно выйти из приложения - в 7.1 есть методы для удаления страниц изНавигация "backstack", которая может пропускать страницу для достижения аналогичного эффекта, например:

NavigationService.RemoveBackEntry();

Однако это работает только на SDK "Mango" и устройствах / эмуляторе


Извинитеэто решение не работает, проверил это, но я оставляю это здесь, если это кому-то полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...