質問

Mainpageと3つのセカンダリページからなるユニバーサルWindows Phoneアプリ(空白のアプリテンプレートから開始)。これらのうちのナビゲーションは、予想通り(部分的にこのMSDNページ)

っての問題は、メインページのときに、ユーザーがハードウェアバックボタンを押すと、私のアプリがバックグラウンドに入れられますが、私のアプリのカードはタスクスイッチャーに残ります。デバッガが接続されているかどうかにかかわらず、これが起こります。

Pivot App(WP)テンプレートに基づく新しいプロジェクトでこれを試してみましたが、同じ問題が表示されます。

ユーザーがメインページから戻ってきたときに「閉じる」と「閉じる」とタスク切替え者にはもうありません。手動でやっている必要があるものはありますか?

役に立ちましたか?

解決

Application.current.exit()を使ってアプリを終了できます。下のハードウェアBUTTONS_BACKPRESS機能。

public MainPage()
{
    Windows.Phone.UI.Input.HardwareButtons.BackPressed += HardwareButtons_BackPressed;
}

private void HardwareButtons_BackPressed(object sender, Windows.Phone.UI.Input.BackPressedEventArgs e)
{
    /* When you don't know the namespace you can use this code instead of the lower

    string[] Namespace = Frame.CurrentSourcePageType.FullName.Split('.');
    if (!e.Handled && Frame.CurrentSourcePageType.FullName == Namespace[0] + ".MainPage")
            Application.Current.Exit();
    */
    if (!e.Handled && Frame.CurrentSourcePageType.FullName == "NAMESPACE.MainPage")
        Application.Current.Exit();
}
.

私はこれがうまくいくことを願っています

クリスチャン

他のヒント

これは私がそれを実装した方法で、user2799780とromaszからのポインタを使って、私は2倍の(国連)登録していないことを確信しています。それは常にナビゲーションごとにナビゲートするのかによって異なります、私は推測します。

編集:私は思い出されました(コメントを参照)中断されたときに、アプリはonnavigatedfromイベントを受信すると、onnavigatedイベントが表示されず、ハンドラが登録されないことがわかりません。その場合以下の実施は、このバグの影響を受けています。

protected override async void OnNavigatedTo(NavigationEventArgs e)
{
    // When we're on this page, pressing Back should close the app
    Windows.Phone.UI.Input.HardwareButtons.BackPressed += HardwareButtons_BackPressed;
}

protected override async void OnNavigatedFrom(NavigationEventArgs e)
{
    // When we leave this page, pressing Back should no longer close the app
    Windows.Phone.UI.Input.HardwareButtons.BackPressed -= HardwareButtons_BackPressed;
}

private void HardwareButtons_BackPressed(object sender, Windows.Phone.UI.Input.BackPressedEventArgs e)
{
    if (!e.Handled)
    {
        Application.Current.Exit();
    }
}
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top