从位图获取ImageSource

本文关键字:ImageSource 获取 位图 | 更新日期: 2023-09-27 18:21:38

我想像这个家伙一样为我的窗体/窗口设置一个背景图像,但我在内存中有一个System.Drawing.Bitmap,而不是磁盘上的图像文件。

我需要做这样的事情:

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

除了BitmapImage不会拿BitmapImageBrush也不会,我不确定其他人是否会。有一个叫BitmapCacheBrush,但我不知道它能做什么。

从位图获取ImageSource

无论如何,我都想明白了。

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

信用