Использование иконки в качестве BackgroundImage

Добавляю в ресурсы ico-файл. Он автоматически попадает в категорию Значки.
После этого к ресурсу можно обращаться так:

Resources.play_active;

Но если попытаться использовать эту иконку в качестве BackgroundImage

     panel1.BackgroundImage = Resources.play_active;

то вылезет ошибка CS0029 Не удается неявно преобразовать тип "System.Drawing.Icon" в "System.Drawing.Image".
А если в свойствах контрола выбрать пункт BackgroundImage и там установить эту иконку, то она прекрасно используется. При этом, в ресурсах появляется копия этой иконки, но уже в категории Изображения. А иконка, что, не изображение? :dizzy_face: Если я правильно вангую, она автоматом конвертится в PNG.
После этого, тот же самый код

     panel1.BackgroundImage = Resources.play_active;

начинает работать.
Почему нельзя в Image загрузить иконку из ресурса? Из файла же они, вроде, грузятся :thinking: И сами конвертятся во что ему там надо.

Image img = Image.FromFile(...);

это из файла. А из ресурса как? Image.FromResource() нету такого.

Через Icon.ToBitmap Method (System.Drawing) | Microsoft Docs наверно можно.

Точно.
Только не понятно, как у битмапа прозрачность (альфа-канал) сохраняется :thinking:

Bitmap != bmp файл, но и в бмп же есть варианты с поддержкой прозрачности (32 бит), просто не все программы это поддерживают (например используют старый формат для лучшей совместимости), оно не сразу появилось и по бмп нет единой четкой спецификации.

Но

вроде ж и не сохраняет.

The transparent areas of the icon are lost when it is converted to a bitmap, and the transparent color of the resulting bitmap is set to RGB(13,11,12) . The returned bitmap has the same height and width as the original icon.

Странно :thinking: У меня сохраняется, вроде :dizzy_face: Либо просто приобретает цвет контрола и кажется, что сохраняется.