Как обрабатывать ключ возврата из ConnectionSettingstask, вызываемый напрямую из вторичной плитки - PullRequest
0 голосов
/ 08 марта 2012

У меня есть небольшое приложение wp7 только с главной страницей. Главная страница имеет 4 кнопки и вызывает ConnectionSettingstask для настройки Wi-Fi, Bluetooth, самолета и сотовой связи. Мне также удалось создать дополнительные плитки для любой из этих кнопок. Событие OnNavigateTo обрабатывает вторичные плитки с помощью ключа, переданного из плитки

    Protected Overrides Sub OnNavigatedTo(ByVal e As System.Windows.Navigation.NavigationEventArgs)
    If (Me.NavigationContext.QueryString.ContainsKey("_key")) Then
        Dim Key As String = String.Empty
        Key = Me.NavigationContext.QueryString("_key")
        Select Key
            Case "WiFi"
                Dim NewTask As New ConnectionSettingsTask
                NewTask.ConnectionSettingsType = ConnectionSettingsType.WiFi
                NewTask.Show()
                ....
        End Select
                NavigationContext.QueryString.Remove("_key")
    End If
End Sub

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

1 Ответ

1 голос
/ 08 марта 2012

Если вы перешли к A, а затем к B, вы можете удалить A из backstack, но только если A и B. есть в вашем приложении.

Решение состоит в том, чтобы закрыть ваше приложение, когда оно вас обнаружит.возвращается со страницы настроек.Единственный способ сделать это - выбросить исключение и не ловить его.(Немного взлома). Проблема в том, что такое решение не является дружественным к рынку, необработанное исключение означает, что ваше приложение не пройдет сертификацию.1005 *

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