2011-01-24 5 views
2

私のアプリでPivotコントロールを使用しているので、ユーザーの後で最後に選択したピボットアイテムに再開するにはどうすればいいですか?tombstonedアプリウィンドウのボタンを押して、戻るボタンを押して再開する)?Windows Phone 7:選択したピボットアイテムに再開

(私はApplication_DeactivatedApplication_Deactivatedにいくつかのコードを追加しようとしましたが、うまくいきませんでした)

答えて

6

ピボットの状態を保存するには、OnNavigatedToOnNavigatedFromの方法でページのStateプロパティを使用する必要があります。 Windowsの携帯電話は、あなたのアプリケーションが廃棄されます場合には、この状態の永続化を処理すること

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) 
    { 
     if (State.ContainsKey("pivotIndex")) 
      myPivot.SelectedIndex = (int)State["pivotIndex"]; 
    } 

    protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e) 
    { 
     State["pivotIndex"] = myPivot.SelectedIndex; 
    } 

注 - :ここで

は、基本的な例です。また、この方法では、ページ内でアプリ内の他の場所にナビゲートすることができ、ナビゲーション上でピボット状態が復元されます。

2

あなたのピボットのSelectedIndexを追跡する場合は、ツームストーンからの戻り時に、この値を復元することができます。

ここでは、墓石時のデータ保存に関する簡単なウォークスルーがあります。

Tombstoning on the Win7 Mobile Platform

+0

リンク先のアーティチョークは、実際の質問には適切ではありません。ピボットコントロールの状態は一時的なもので、Page.Stateは独立したストレージではありません。 – AnthonyWJones

1

あなたが本当にのすべてにコードを追加する必要がツームストーン実装するには:

  • 割引:

  • をApplication_Closing
  • をApplication_Deactivated
  • ロード:

    • をApplication_Launchingはその後もピボットページ内の "OnNavigatedTo" をオーバーライドする必要が

をApplication_Activated - これはあなたのためにSelectedIndexを設定するのに理想的な時間ですピボット。

関連する問題