Добавляю в ресурсы ico
-файл. Он автоматически попадает в категорию Значки
.
После этого к ресурсу можно обращаться так:
Resources.play_active;
Но если попытаться использовать эту иконку в качестве BackgroundImage
panel1.BackgroundImage = Resources.play_active;
то вылезет ошибка CS0029 Не удается неявно преобразовать тип "System.Drawing.Icon" в "System.Drawing.Image".
А если в свойствах контрола выбрать пункт BackgroundImage
и там установить эту иконку, то она прекрасно используется. При этом, в ресурсах появляется копия этой иконки, но уже в категории Изображения
. А иконка, что, не изображение? Если я правильно вангую, она автоматом конвертится в PNG
.
После этого, тот же самый код
panel1.BackgroundImage = Resources.play_active;
начинает работать.
Почему нельзя в Image
загрузить иконку из ресурса? Из файла же они, вроде, грузятся И сами конвертятся во что ему там надо.
Image img = Image.FromFile(...);
это из файла. А из ресурса как? Image.FromResource()
нету такого.