2011-02-01 11 views

Odpowiedz

17

Korzystając Icon.ToBitmap()

Bitmap b = SystemIcons.Error.ToBitmap(); 

EDIT:

Trzy lata później, a jeszcze jeden upvote, czuję się zobowiązany do kierowania ludzi, którzy po prostu chcą, aby narysować ikonę do grafiki sprzeciw wobec przeczytaj odpowiedź @Hans Passant. To lepsze rozwiązanie.

+0

Na marginesie, wymaga to .NET 3.5 lub nowszej. –

+0

@Evan: To nie jest prawda http://msdn.microsoft.com/en-US/library/system.drawing.icon_methods%28v=VS.80%29.aspx –

+0

To jest łatwiejsze niż się spodziewano. Dzięki. –

7

Muszę wylać na okropne marnotrawstwo wypalenia tak drogich zasobów jak okno Sterowania i Okna, aby narysować ikonę. Aby zapisać jedną linię kodu:

protected override void OnPaint(PaintEventArgs e) { 
     e.Graphics.DrawIcon(SystemIcons.Error, 10, 10); 
     base.OnPaint(e); 
    } 
+0

Racja, zakładając, że trzeba tylko narysować, nie manipulować nim lub zrobić coś innego, do czego będzie potrzebny obraz. W takim przypadku "rozpruć": D –

+0

Hah. Dobrze wiedzieć. Dzięki. –

+0

@EdS - Jeśli chcesz uzyskać efekty specjalne, użyj narzędzia Graphics.FromImage() i * nadal * użyj funkcji DrawIcon(). Ale przyznaję się do braku wyobraźni. Czy masz realistyczne zastosowanie? –

Powiązane problemy