enter code here
我有独立的存储工作,但它只存储一个项目。隔离存储以存储最近的列表,windows phone
我希望能够存储用户在列表中使用的收藏夹列表。
目前,我可以存储大量的停靠点,但是当我再次打开应用程序时,它只会记录最后一个项目。并删除剩下的部分。
private void ApplicationBarFavouriteButton_Click(object sender, EventArgs e)
{
IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;
// txtInput is a TextBox defined in XAML.
if (!settings.Contains("userData"))
{
settings.Add("userData", busStopName.Text);
}
else
{
settings["userData"] = busStopName.Text;
}
settings.Save();
MessageBox.Show("Bus Stop was added to your favourites");
}
则显示列表
if (IsolatedStorageSettings.ApplicationSettings.Contains("userData"))
{
listFav.Items.Add(IsolatedStorageSettings.ApplicationSettings["userData"] as string);
}
编辑:
private void ApplicationBarFavouriteButton_Click(object sender, EventArgs e)
{
IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;
List<string> favourites = settings["favourites"] as List<string>;
if (favourites == null)
{
favourites = new List<string>();
settings.Add("favourites", favourites);
}
favourites.Add(busStopName.Text);
settings["favourites"] = favourites;
}
显示数据
if (IsolatedStorageSettings.ApplicationSettings.Contains("favourites"))
{
listFav.Items.Add(IsolatedStorageSettings.ApplicationSettings["favourites"] as List<string>);
}
嗨,谢谢。 我得到以下信息 - KeyNotFoundException 当它击中这条线 '名单最爱=设置[“收藏夹”]作为列表;' –
2012-04-06 17:25:49
我已经改变了该行使用TryGetValue()方法来代替。这将尝试获取该值而不会导致异常。希望这可以帮助。 – 2012-04-06 21:06:15
谢谢,我补充说。但我现在正在“systems.collections.generic.list'1 [S ....”无法看到这一切。也只能保存一次。 不确定发生了什么事。 – 2012-04-07 12:15:27