ImageList.ImageSize Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the size of the images in the image list.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public Size ImageSize { get; set; }

Property Value

Type: System.Drawing.Size

The Size that defines the height and width, in pixels, of the images in the list. The default size is 16 by 16. The maximum size is 256 by 256.

Exception Condition

The value assigned is equal to IsEmpty.


The value of the height or width is less than or equal to 0.


The value of the height or width is greater than 256.


The new size has a dimension less than 0 or greater than 256.

Setting the ImageSize property prior to adding images to the image collection causes the images to be resized to the image size specified.

When you set the ImageSize property to a new value, the Handle for the image list is recreated.

Because setting the ImageSize property causes the handle to be recreated, you should set ImageSize prior to setting the Images property. When the handle for the ImageList has been created, setting the ColorDepth or ImageSize properties in code, after setting the Images property, will cause the collection of images set for the Images property to be deleted.

The following code example demonstrates constructing an ImageList, adding images to the Images property, setting the ImageSize property, and using the Draw method. To run this example, place it in a form containing a button named Button1. The example assumes the existence of FeatherTexture.bmp and Gone Fishing.bmp at c:\Windows\. Change the example accordingly if the bitmaps do not exist on your system, or exist at another location.

internal System.Windows.Forms.ImageList ImageList1;

// Create an ImageList Object, populate it, and display
// the images it contains.
private void Button1_Click(System.Object sender, 
	System.EventArgs e)

	// Construct the ImageList.
	ImageList1 = new ImageList();

	// Set the ImageSize property to a larger size 
	// (the default is 16 x 16).
	ImageList1.ImageSize = new Size(112, 112);

	// Add two images to the list.
		Image.FromFile("C:\\windows\\Gone Fishing.bmp"));

	// Get a Graphics object from the form's handle.
	Graphics theGraphics = Graphics.FromHwnd(this.Handle);

	// Loop through the images in the list, drawing each image.
	for(int count = 0; count < ImageList1.Images.Count; count++)
		ImageList1.Draw(theGraphics, new Point(85, 85), count);

		// Call Application.DoEvents to force a repaint of the form.

		// Call the Sleep method to allow the user to see the image.

.NET Framework
Available since 1.1
Return to top