Name

Icon

Synopsis

This class, which is not derived from the Image class (whatever may be implied by parts of the documentation shipped with VS.NET 2002!), represents a small, transparent bitmap—a Win32 icon, in fact. As such, it intrinsically supports a variety of different resolutions and bit-depths.

As with Bitmap, this is a resource-based class, and therefore you should carefully manage its lifetime, calling Dispose() when it is no longer needed, to avoid leaking system resources.

You can construct an Icon from a file, or from another Icon optionally looking for the image that best matches a particular resolution.

The FromHandle() static method, and the Handle property allow you translate to and from native icon handles in interop scenarios. (Note that you must not delete the handle retrieved from this property as it is the original, not a copy)

Finally, you can translate the Icon to a Bitmap with the ToBitmap() method.

Note that you have very little control over the particular image, resolution, and bit-depth that is ultimately rendered by the Graphics.DrawIcon() method. If you need that degree of control, then a Bitmap and its Bitmap.MakeTransparent() method might be a better choice. The icon is something of a hang-over from the days when bitmaps didn’t have alpha channels.


public sealed class Icon : MarshalByRefObject : 

System.Runtime.Serialization.ISerializable, ICloneable, IDisposable {

// Public Constructors

   public Icon(Icon original, int width, int height);

   public Icon(Icon ...

Get .NET Windows Forms in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.