如何在虚拟模式下显示所有列表视图项目上的图标(C#)

我正在使用listview的虚拟模式来显示大数据。 但我不知道如何显示每个项目的图像。 谁能帮我 ?

我写

private void ListContact_RetrieveVirtualItem(object sender, RetrieveVirtualItemEventArgs e) { MyContact contact = ContactData.GetMyContact(e.ItemIndex); if (e.Item == null) e.Item = new ListViewItem(contact.ToString()); if (contact.Photo != null) { e.Item.ImageList.Images.Add("" + contact.Id, contact.Photo); e.Item.ImageKey = "" + contact.Id; } else { e.Item.ImageKey = "default"; } } 

但它无法正常工作

这似乎是.NET Framework中的一个错误(已被标记为无法修复 )。 你可能想看看这个 。 解决方案是使用ImageIndex而不是ImageKey