列表视图图片与文本和索引
本文关键字:文本 索引 视图 列表 | 更新日期: 2023-09-27 18:32:56
我有一个带有图像列表的列表视图,因此我可以在列表视图中的文本附近显示图片。
问题是每次按下按钮时应用程序都会重新下载新图片,因此这意味着它会删除以前下载的图片。
如何避免这种情况?
try
{
var req = WebRequest.Create(string.Format("http://minotar.net/avatar/{0}/24.png", textBox1.Text));
var stream = req.GetResponse().GetResponseStream();
var img = Image.FromStream(stream);
var imageList1 = new ImageList();
pictureBox1.Image = img;
imageList1.Images.Add(Image.FromFile(img2));
listView1.SmallImageList = imageList1;
for (int _index = 0; _index < imageList1.Images.Count; _index++)
{
var item = new ListViewItem();
item.ImageIndex = _index;
listView1.Items.Add(item).Text = " " + textBox1.Text;
}
}
catch (Exception)
{
pictureBox1.Image = Properties.Resources._200;
}
创建一个缓存 - 并检查您是否已经拥有它。 如果映像未更改,则可以将其更改为缓存到磁盘 (映像。保存)代替。
// Class-level variable
var _imageDictionary = new Dictionary<string,Image>();
// Logic in method
Image image;
if(_imageDictionary.ContainsKey(textBox1.Text))
image = _imageDictionary[textBox1.Text];
else {
image = // code to retrieve image from web
_imageDictionary[textBox1.Text] = image;
}
// ... add it to your image list