Страницы

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

среда, 5 июня 2019 г.

Преобразование Bitmap ресурса в ImageSource

Имеется Bitmap ресурс Properties.Resources.part1. Нужно установить этот ресурс в свойство заполнения прямоугольника Rectangle.Fill. Но Fill свойство принимает только тип ImageSource


Ответ

Ваша задача имеет два решения:
На одно @Mints97 привел ссылку Get ImageSource from Bitmap?, выглядит оно так:
System.Drawing.Bitmap br = Properties.Resources.part1; System.Windows.Media.Imaging.BitmapSource b = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap( br.GetHbitmap(), IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions());
Но я бы не помещал рисунок в ресурсы, а поступил иначе:
1.Создал бы в проекте папку, например IMAGES;
2.Поместил ваш рисунок (part1) в эту папку;
3.Тогда бы код выглядел так:
System.Windows.Media.Imaging.BitmapImage b = new BitmapImage( new Uri("pack://application:,,,/IMAGES/part1.bmp"));
Ну и соответственно:
rectangle.Fill = new ImageBrush(b);

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

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