C# 将位图加载到PictureBox控件
出于某种原因,这不起作用。我不知道为什么:C# 将位图加载到PictureBox控件,c#,visual-studio-2010,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
objBitmap = new Bitmap(Resource1.im);
Stream stream;
objBitmap.Save(stream, ImageFormat.Bmp);
this.pictureBox2.Image = Image.FromStream(stream);
objBitmap.Dispose();
基本上,我需要在PictureBox控件中显示图像,但我不确定如何执行该操作。您可以将其更改为
pictureBox2.Image = Resource1.im;
要回答您的问题,您需要在流
变量中放入一个流(可能是MemoryStream
)
在将流读回位图之前,还需要“倒带”流。(
stream.Position=0
)好吧,它应该在Save()方法上启动,因为流从未初始化过。不知道这样做的意义何在。可能有一个,但它在代码中不可见。正常版本为:
if (this.pictureBox2.Image != null) this.pictureBox2.Dispose();
this.pictureBox2.Image = Properties.Resources.im;
关于Resource1可能是什么,有一些问号。您可以使用Project+属性的“资源”选项卡,然后单击“添加资源”按钮上的箭头,添加现有文件,来运行我的版本。实际上,我无法这样做,因为我已从资源(Resource1.im)加载了图片但是我已经改变了代码中一些像素的颜色,所以我想把objBitmap位图对象放在PictureBox控件中。Resource1.im是原始图像,我不想显示它。我不知道你在说什么。
Bitmap
子类image
,所以这很容易让人恼火(不管是什么意思)。
pictureBox2.Image = objBitmap;