Как я могу преобразовать System.Drawing.Icon в System.Drawing.Image? - PullRequest
32 голосов
/ 19 января 2012

Я получаю значок из другого приложения, используя это:

Icon IEIcon =  Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe");

как преобразовать его в System.Drawing.Image ?

Заранее спасибо.

Ответы [ 5 ]

56 голосов
/ 19 января 2012

Описание

Bitmap получено из Image, поэтому вы можете использовать метод .ToBitmap() Icon.

Образец

Icon IEIcon = Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe");
Image im = IEIcon.ToBitmap();

Дополнительная информация

8 голосов
/ 19 января 2012

Не могли бы вы использовать метод ToBitmap().

ToBitmap ()

4 голосов
/ 15 октября 2014

Для тех, кто хочет сделать обратное: (VB.NET; myImage-> myIcon)

Dim tmpBmp As Bitmap
tmpBmp = myImage
Dim hIcon As IntPtr = tmpBmp.GetHicon
myIcon = Icon.FromHandle(hIcon)

Я пишу это здесь, потому что прибегая к помощи " System.Drawing.Image", преобразованного в "System.Drawing.Icon ", я думаю, что это не заслуживает нового вопроса.

4 голосов
/ 19 января 2012

Оригинал в: Конвертировать значок в изображение в C #

Icon a =  Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe");

Image im = a.ToBitmap()
3 голосов
/ 19 января 2012

Очень просто. Icon имеет метод с именем ToBitmap.

Image converted_image = Icon.ExtractAssociatedIcon(@"C:\Program Files\Internet Explorer\iexplore.exe").ToBitmap()
...