将位图加载到PictureBox控件

时间:2010-11-07 23:06:10

标签: c# visual-studio-2010

由于某种原因,这不起作用。我不确定原因:

        objBitmap = new Bitmap(Resource1.im);

        Stream stream;
        objBitmap.Save(stream, ImageFormat.Bmp);

        this.pictureBox2.Image = Image.FromStream(stream);

        objBitmap.Dispose();

基本上,我需要在PictureBox控件中显示图像,我不知道该怎么做。

3 个答案:

答案 0 :(得分:4)

嗯,应该在Save()方法上使用kaboom, stream 从未初始化。不确定这样做的重点是什么。可能有一个但是从您的代码中看不到它。正常版本是:

if (this.pictureBox2.Image != null) this.pictureBox2.Dispose();
this.pictureBox2.Image = Properties.Resources.im;

有一些关于Resource1可能是什么的问号。您可以使用Project + Properties,Resource选项卡获取我的版本,然后单击Add Resource按钮上的箭头,Add Existing File。

答案 1 :(得分:3)

pictureBox2.Image = objBitmap;

答案 2 :(得分:2)

您可以将其更改为

pictureBox2.Image = Resource1.im;

要回答您的问题,您需要在MemoryStream变量中添加一个流(可能是stream)。
在将其读回Bitmap之前,您还需要“回放”流。 (stream.Position = 0