0

MainPage.xaml.csにインスタンスメンバーがあります。つまり、PhoneApplicationPageから拡張するMainPageクラスにあります。別のページに移動して戻ったときに、インスタンスメンバーの値を取得したいのですが...ページ呼び出し間で永続化するにはどうすればよいですか。数ページしかなく、メンバーオブジェクトクラスは小さい

PhoneApplicationServiceにプッシュする必要がありますか?そして州に?

これは最もクリーンで最高のパフォーマンスの方法ですか?

モバイル開発で初めて...事前に感謝します:)

4

2 に答える 2

1

通常、PageインスタンスはRAMに保存されるため、何もする必要はありません。

ただし、トゥームストンの状況では、ページインスタンスがRAMからフラッシュされます。

値または文字列を保持するための最も簡単な方法は、値をIsolatedStorageSettingsに保存/ロードすることです-http://msdn.microsoft.com/en-us/library/system.io.isolatedstorage.isolatedstoragesettings (v = VS .95).aspx

OnNavigateToメソッドを使用してこれをロードし、OnNavigatedFromメソッドを使用してこれを保存できます。

より大きな、またはより複雑なオブジェクトを永続化する必要がある場合は、JSONまたはXMLを使用してオブジェクトをシリアル化/逆シリアル化できます。また、IsolatedStorage内のファイルや、SQLCE、SQLiteなどのデータベースソリューションなど、より一般的なストレージ手法の使用を検討できます。スターリング

于 2012-06-02T15:09:40.077 に答える
0

ページがバックスタックから削除されるか、アプリケーションがトゥームストーンされない限り、ナビゲーション中にインスタンスメンバーが破棄されることはないと思います。インスタンスメンバーを存続させるために、余分なコード行を記述する必要はありません。したがって、PhoneApplicationServiceの状態に保存する必要はありません。

于 2012-06-02T15:02:13.467 に答える