我希望PictureBox中的图像会根据窗口的大小自动调整,但不要大于原始图像。虽然PictureBoxSizeMode.Zoom
几乎可以做到这一点,但当PictureBox大于图像时,它会使图像像素化。我目前正在调整大小时执行此代码:
if (pBox.Height * pBox.Height < pBox.Image.Width * pBox.Image.Height) pBox.SizeMode = PictureBoxSizeMode.Zoom;
else pBox.SizeMode = PictureBoxSizeMode.CenterImage;
虽然大部分时间都可以使用,但偶尔图像也不会恢复缩放:
有什么更好的方法可以解决这个问题吗?
答案 0 :(得分:1)
如何将最大尺寸设置为图像尺寸:
pictureBox1.MaximumSize = pictureBox1.Image.Size;
结合:
pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
答案 1 :(得分:0)
你应该使用“if(pBox.Width * pBox.Height&lt; pBox.Image.Width * pBox.Image.Height)”if()Statement。 pBox的两个维度都被视为高度,可能会引起一些问题。检查