我正试图解决这个问题:我在LargeIcon视图中有一个ListView(System.Windows.Forms.View.LargeIcon
)
这一行在构造函数中:
this.listView1.LargeImageList.ImageSize = new Size(32, 32);
然后双击调用此函数:
private void listView1_DoubleClick(object sender, EventArgs e)
{
this.listView1.LargeImageList.ImageSize = new Size(64, 64);
}
当我双击列表视图时,大小会按预期更改,但我的图标被删除了,我只是得到一个很大的空白区域。即使我之后将ImageIndex设置为使用它,它仍然是空白的,我似乎无法再次显示它。
我认为我做错了什么(虽然我猜.NET可能会被打破)。我该怎么改变图标不会消失?
(我在.NET 2.0中)
答案 0 :(得分:2)
我认为你遇到了MSDN(http://msdn.microsoft.com/en-us/library/system.windows.forms.imagelist.imagesize.aspx)中描述的这个警告:
因为设置了ImageSize属性 导致重新创建句柄,你 应该在设置之前设置ImageSize Images属性。
此外,依靠系统将图像从32x32调整为64x64自然会导致图像质量低。