0

次のブログ投稿で、作成者はページ状態 (TextBox コントロール内のテキストなど) をページ状態ディクショナリに保存して、ページ間を移動するときに復元できるようにする必要性について説明しています。

http://www.wintellect.com/CS/blogs/jgarland/archive/2011/01/26/a-matter-of-state-part-1.aspx

ただし、Button と TextBlock と項目の ListBox を含む 1 つのページを持つ非常に単純なアプリケーションを作成しました。ボタンは、 経由でダミー ページに移動しますNavigationService.Navigate。ここで、リストをスクロールして TextBox にテキストを入力し、ダミー ページに移動して [戻る] ボタンを押すと、テキストがまだ TextBox に存在し、スクロール位置が保持されていることがわかります。

私の質問は、(廃棄はさておき) UI コントロール間を単に移動するときに、UI コントロールの状態を保持する必要があるかどうかです。frameowkr がこれを行っているように見えます (上記のブログ投稿にもかかわらず!)。

4

1 に答える 1

1

アプリケーションのコンテキストで意味があり、ユーザーに役立つ場合は、状態を保持する必要があります。

これはほぼ間違いなく、廃棄時を意味しますが、アプリケーションが [戻る] ボタンで閉じられてから再起動された場合はおそらくそうではありません。

あなたのシナリオでは、スクロール位置とテキストは廃棄時に失われるため、おそらくこれらの詳細を保存する必要があります。
状態の保存は、トゥームストーン化とアプリケーションの新しいインスタンスの起動のコンテキストでのみ関連するため (いくつかの例外的なケースは別として、あなたがその 1 つであるとは思えません)、保存について話すのは意味がありません。これ以外の状態。

于 2011-02-08T17:07:55.663 に答える