下载图像缩略图并在 ListView C# 中显示它们

Posted

技术标签:

【中文标题】下载图像缩略图并在 ListView C# 中显示它们【英文标题】:Download image thumbnails and show them in ListView C# 【发布时间】:2018-04-22 16:10:06 【问题描述】:

我正在尝试下载缩略图并在列表视图中显示它们。我做错了什么?

ListView 加载,但不显示任何缩略图。

 using (var webClient = new WebClient())
        
            foreach (var thumb in imgFiles.Item1)
            
                byte[] data = webClient.DownloadData(thumb);
                using (MemoryStream imageData = new MemoryStream(data))
                
                    Image img = Image.FromStream(imageData);
                    thumbList.Images.Add(img);
                
            
        

 for (var i = 0; i < thumbList.Images.Count; i++)
        
            ListViewItem lvi = new ListViewItem();
            lvi.ImageIndex = i;
            lvi.SubItems.Add("test");
            lvi.SubItems.Add("test1");

            lvi.Text = i.ToString();

            listViewLinks.Items.Add(lvi);
        
        listViewLinks.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);

【问题讨论】:

如果你把图片放在窗口中,在网格之外,你能看到它们吗? 您是否设置了ImageList?看看msdn.microsoft.com/en-us/library/…的最底层 什么是thumbList?您必须使用正确的视图并在给定的ListView 中填写正确的图像列表。见this answer。 thumbList 是 ImageList,@RandRandom :是的。 【参考方案1】:

你可以试试下面的代码。

listView1.SmallImageList = thumblist;
ListViewItem lvi = new ListViewItem();
lvi.SubItems.Add("A");
lvi.SubItems.Add("B");
lvi.SubItems.Add("C");
lvi.ImageIndex = 2; // this will display YourImageList.Images[2] in the first column
listView1.Items.Add(lvi);

你能得到ImageList吗?

【讨论】:

这是假设listView1.View = View.SmallIcon

以上是关于下载图像缩略图并在 ListView C# 中显示它们的主要内容,如果未能解决你的问题,请参考以下文章

在C#中,在ImageList中,如何按比例显示缩略图

PIL:缩略图并以方形图像结尾

来自外部 url 的 wordpress 特色图片,无需下载

在 MouseOver 中旋转缩略图并在 Mouseleave 中停止旋转

Android - 从服务器检索视频的缩略图并显示在手机上

c#点击treeView中的文件夹怎么让文件夹中图片的缩略图显示在listView中