Получить ImageSource из растрового изображения? - PullRequest
14 голосов
/ 27 января 2012

Я хочу установить фоновое изображение для моей формы / окна , как этот парень , но вместо файла изображения на диске у меня есть System.Drawing.Bitmap в памяти.

Мне нужно сделать что-то вроде этого:

this.Background = new ImageBrush(new BitmapImage(bmp));

За исключением того, что BitmapImage не будет принимать Bitmap, а также ImageBrush, и я не уверен, что кто-либо из них подойдет. Есть один, который называется BitmapCacheBrush, но я не знаю, что он делает.

1 Ответ

18 голосов
/ 27 января 2012

Неважно, я понял.

public static Brush CreateBrushFromBitmap(Bitmap bmp)
{
    return new ImageBrush(Imaging.CreateBitmapSourceFromHBitmap(bmp.GetHbitmap(), IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions()));
}

кредит

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