0

XAML で記述された ListBox があるとします。

<ListBox x:Name="myListBox" />

C# で項目を追加します。

myListBox.Items.Add("a");
myListBox.Items.Add("b");
myListBox.Items.Add("c");

アプリを閉じると、myListBox に追加したアイテムがすべてなくなり、アプリを再度開くと、myListBox は空白から始まります。アイテムを保持したかったのですが、今のところ私の方法は、それを 1 つの文字列に格納して RoamingSettings に保存することです。しかし、それは非効率的です。私のコードは今混乱しています。より良いアイデアはありますか?

4

1 に答える 1

2

この記事で詳しく説明されているように、アプリケーションの状態を保存するにはさまざまな方法があります。 lang=csharp#コードスニペット-7

メソッドをオーバーライドしていますSaveStateか?このメソッドにはDictionary<String,Object>、手動で RoamingSettings にシリアル化するよりも適切にデータを格納するために使用できる が用意されています。

とはいえ、MVVM 設計を採用することを検討してください。そうすれば、プロパティの状態を制御するのではなく、ビュー/ページの ViewModel データのみを保存する必要があります。

于 2013-03-03T09:50:02.707 に答える