0

リストビューからアイテムを選択してからアプリを終了するか戻るボタンを押すと、そのコードによると、Windows 8アプリケーション(C#)で分割ページテンプレートを使用しています。現在選択されているアイテムを記憶し、デバッグ後に保存すると思いますpageState で現在選択されている値。しかし、同じページをリロードした後、選択した同じアイテムをリロード (選択) できません。アプリケーションに分割ページを追加するだけでなく、分割アプリを試しました。分割ページ テンプレートにバグはありますか?

ありがとう

4

2 に答える 2

1

SplitPage を設定する必要がありますNavigationCacheMode="Enabled"

また、すべてのアイテムに一意の ID があることを確認してください

if (selectedItem != null) pageState["SelectedItem"] = selectedItem.UniqueId;
于 2012-11-21T05:59:19.520 に答える
0

デフォルトの分割ページ テンプレート アプリは適切に機能しています。最初のページ (ItemsPage) でグループを選択し、リストからアイテムを選択して SplitPage に移動すると、 SplitPage にいる間、そのアイテムは一時停止または終了しても保持されます

ただし、戻るボタンを押した場合、アプリケーションはその項目を選択したことを記憶しません。ItemsPage に戻ると、同じグループを選択しても、ページの「新しい」バージョンが読み込まれ、デフォルトの最初の要素が選択されます。各グループで最後に選択したアイテムを復元する場合は、独自のコードを追加する必要があります。

アプリが ItemsPage をキャッシュできるようにするNavigationCacheModeというプロパティもあります。ただし、そうすると、ItemsPage とは別のグループを選択した場合でも、最後に選択したグループの ItemsPage (および選択したアイテム) が表示されます (つまり、ここでは機能しません)。

最後に、「終了」状態をテストするには、Visual Studio のシミュレーターを介してアプリを実行し、[サスペンドとシャットダウン] を選択する必要があることに注意してください。アプリを終了するだけ (Alt+F4 または下にスワイプ) した場合、アプリの状態は "ClosedByUser" になり、その場合、デフォルトでは状態を復元しません。

于 2012-11-21T05:20:21.427 に答える