簡體   English   中英

Windows 8 C# - 如何保留ListBox項?

[英]Windows 8 C# - how to keep ListBox items?

假設我有一個用XAML編寫的ListBox:

<ListBox x:Name="myListBox" />

並在C#中添加項目:

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

當我關閉應用程序時,我在myListBox中添加的項目都已消失,當我再次打開應用程序時,myListBox從空白開始。 我想保留這些項目,現在我的方法是將它存儲在1個字符串中並將其保存到RoamingSettings。 但它效率低下,我的代碼現在很亂。 有更好的主意嗎?

有多種方法可以保存應用程序的狀態,如本文所述: http//msdn.microsoft.com/en-us/library/windows/apps/hh986968.aspx?cs- save- lang = 1&c-郎= CSHARP#代碼片斷-7-

你是否重寫了SaveState方法? 該方法提供了一個Dictionary<String,Object> ,可以比手動序列化到RoamingSettings更適當地存儲數據。

也就是說,考慮采用MVVM設計,這樣您只需要保存視圖/頁面的ViewModel數據而不是控制屬性狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM