c# winforms 标签中的图像缩小

Image shrinking in a label of c# win forms

我正在设计一个 c# .NET 4.5 win form.While 在标签中插入图像,图像表现正常 differently.I 有两个标签,我在 them.In 中插入 2 个不同的图像第一个,我使用图像 属性 设置图像,第二个,我只使用 ImageList.Now 有趣的是,对于第二个标签,它的图像正在缩小,而对于第一个标记它不是。为什么会这样??请指教。为了更好地理解,附上图片:

在图像中,您可以看到第一个标签的图像显示正确,而第二个标签的图像显示不正确

问题是 Image and ImageList properties work pretty differently. While for the Image, it will display the image as it is, ImageList has a property called ImageSize。此 属性 在编译时影响 Label ImageList 中存储图像的大小,因此 ImageList 中的所有图像都将具有 大小 [= 运行 时间 ImageSize 的 33=]。

您使用 ImageList 时图像缩小很可能是由于此原因造成的。 ImageSize 的默认值为 16x16.

而且你也不能在运行时更改ImageSize,因为这就像替换列表一样,所有图像都不会显示(!).

因此,如果您使用 ImageList 显示图像,则所有图像的尺寸必须 相同 。否则,您必须将图像放在 Resources.resx 中,这样图像大小就不会改变,并且可以在 运行 时以某种方式访问​​那里的图像。