C# Windows Phone 8 Longlistselector映像缓存

C# Windows Phone 8 Longlistselector映像缓存,c#,image,xaml,windows-phone-8,longlistselector,C#,Image,Xaml,Windows Phone 8,Longlistselector,我在XAML中有一个longlistselector: //喋喋不休 //喋喋不休 //布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉 以及ListViewModel.cs 使用Newtonsoft.Json; 使用制度; 使用系统组件模型; 名称空间MyApp { 公共类ListViewModel:INotifyPro

我在XAML中有一个longlistselector:


//喋喋不休
//喋喋不休
//布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉布拉
以及ListViewModel.cs

使用Newtonsoft.Json;
使用制度;
使用系统组件模型;
名称空间MyApp
{
公共类ListViewModel:INotifyPropertyChanged
{
私有字符串_userid;
[JsonProperty(PropertyName=“userid”)]
公共字符串用户ID
{
得到
{
返回_userid;
}
设置
{
如果(值!=\u用户ID)
{
_userid=值;
NotifyPropertyChanged(“用户ID”);
}
}
}
私有字符串_profilePicURL;
[JsonProperty(PropertyName=“profile\u picture”)]
公共字符串profilePicURL
{
得到
{
返回_profilePicURL;
}
设置
{
如果(值!=\u profilePicURL)
{
_profilePicURL=值;
NotifyPropertyChanged(“profilePicURL”);
}
}
}
私有字符串\u用户名;
[JsonProperty(PropertyName=“username”)]
公共字符串用户名
{
得到
{
返回_用户名;
}
设置
{
如果(值!=\u用户名)
{
_用户名=值;
NotifyPropertyChanged(“用户名”);
}
}
}
公共事件属性更改事件处理程序属性更改;
私有void NotifyPropertyChanged(字符串propertyName)
{
PropertyChangedEventHandler处理程序=PropertyChanged;
if(null!=处理程序)
{
处理程序(这是新的PropertyChangedEventArgs(propertyName));
}
}
}
}
我用数据库中的20条记录填充此列表。一切正常,但我不喜欢当我刷新列表时,应用程序再次加载所有图片。因为当我刷新时,应用程序会再次从互联网加载最近的20条记录,在这20个插槽列表的顶部可能会有1到2条新条目,并且所有其他图片都已经加载。那么,我怎样才能“推”下旧的记录,只在顶部加载新的记录呢。我不想再次下载所有旧图像。如何缓存它?当然,当较新的条目出现在顶部时,底部的条目将消失。

独立存储文件夹中的图像。从该文件夹加载
列表中的图像。
现在,当需要添加新图像时,将它们保存到同一文件夹中,并删除不再需要的图像

这样,即使用户关闭应用程序然后重新打开,图像也会被缓存,从而为用户保存数据