Picturebox,SizeMode缩放和填充

时间:2014-02-19 09:32:24

标签: c# winforms

可以设置SizeMode Zoom并应用填充吗?

以下内容可行:

    ibPic2DLeft.SizeMode = PictureBoxSizeMode.Normal;
    ibPic2DLeft.Padding = new Padding(100, 100, 50, 50);

以下内容不起作用:

        ibPic2DLeft.SizeMode = PictureBoxSizeMode.Zoom;
        ibPic2DLeft.Padding = new Padding(100, 100, 50, 50);

与缩放兼容的填充的替代方法是什么?

2 个答案:

答案 0 :(得分:0)

你可以更好地采用这种方法,当你的图像尺寸小于图片框的大小时,你可以使用普通模式,当你的图片大小比图片框大时,你可以使用缩放模式。这是我过去为我的应用程序解决方案找到的最佳动态方法。

Image oImg = yourImage;

if ((oImg.Height > ibPic2DLeft.Height | oImg.Width > ibPic2DLeft.Width)) {
    ibPic2DLeft.SizeMode = PictureBoxSizeMode.Normal;
} else {
    ibPic2DLeft.SizeMode = PictureBoxSizeMode.Zoom;
}

答案 1 :(得分:0)

将PictureBox放在Panel中。 将PictureBox设置为Dock = Fill。 设置PictureBox SizeMode = Zoom。 将填充应用于面板。