我怎样才能在pictureBox中重复一张图片

时间:2013-06-07 03:12:38

标签: c# .net winforms picturebox

图像的宽度为200px,pictureBox的宽度为400px。

我应该设置pictureBox的哪个属性来显示图像repeat-x?

1 个答案:

答案 0 :(得分:2)

我认为没有任何属性可以使图像水平重复显示x次。但是一些自定义代码可以提供帮助,这是我的代码:

public static class PictureBoxExtension
{
    public static void SetImage(this PictureBox pic, Image image, int repeatX)
    {
        Bitmap bm = new Bitmap(image.Width * repeatX, image.Height);
        Graphics gp = Graphics.FromImage(bm);
        for (int x = 0; x <= bm.Width - image.Width; x += image.Width)
        {
            gp.DrawImage(image, new Point(x, 0));
        }
        pic.Image = bm;
    }
}

//Now you can use the extension method SetImage to make the PictureBox display the image x-repeatedly 
myPictureBox.SetImage(myImage, 3);//repeat 3 images horizontally.

您可以自定义代码以使其垂直重复或看起来像检查板。

希望它有所帮助!