Страницы

Поиск по вопросам

понедельник, 15 июля 2019 г.

Using и картинка в MemoryStream'е

Почему этот код работает
Dim PctStream As MemoryStream = Await GetSomePct() Me.BackgroundImage = Bitmap.FromStream(PctStream)
а этот - нет?
Using PctStream As MemoryStream = Await GetSomePct() Me.BackgroundImage = Bitmap.FromStream(PctStream) End Using
В случае с Using вместо картинки отображается перечёркнутый прямоугольник.


Ответ

Проблема в том, что вы закрываете stream, к которому при отрисовке обращается GDI+.
На MSDN есть заметка:
Необходимо сохранять поток открытым в течение времени существования Image

Комментариев нет:

Отправить комментарий