Загрузить растровое изображение в элемент управления PictureBox - PullRequest
2 голосов
/ 08 ноября 2010

По какой-то причине это не работает. Я не уверен, почему:

        objBitmap = new Bitmap(Resource1.im);

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

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

        objBitmap.Dispose();

По сути, мне нужно показать изображение в элементе управления PictureBox, и я не уверен, как это сделать.

Ответы [ 3 ]

4 голосов
/ 08 ноября 2010

Ну, это должно быть kaboom для метода Save (), поток никогда не инициализировался.Не уверен, какой смысл делать это.Может быть один, но он не виден из вашего кода.Обычная версия:

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

С некоторыми вопросительными знаками о том, каким может быть Resource1.Вы получаете мою версию, используя Project + Properties, вкладку Resource и нажимаете стрелку на кнопке Add Resource, Add Existing File.

3 голосов
/ 08 ноября 2010
pictureBox2.Image = objBitmap;
2 голосов
/ 08 ноября 2010

Вы можете изменить это на

pictureBox2.Image = Resource1.im;

Чтобы ответить на ваш вопрос, вам нужно поместить поток (вероятно, MemoryStream) в переменную stream.
Вам также нужно будет «перемотать» поток перед чтением его обратно в растровое изображение. (stream.Position = 0)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...