Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

A better way to select images for your ImageList

0.00/5 (No votes)
22 Jul 2003 1  
A design time control that makes it easier to add/remove images to an ImageList on a Form

Introduction

ImageListAssigner gives you a way to add/remove images to an ImageList on a form. It can browse for folders, display images and assign your selection to the ImageList. The ImageListAssigner is to be used at design-time only and not at run-time.

Background

You have to use the WinLib.Controls namespace which contains :-

Info

ImageListAssigner uses some constants defined in this class to remember your settings. It contains registry keys, locating where ImageListAssigner saves the settings.

ImageListAssigner

The component links your ImageList to the ImageListAssignerSelector class.

ImageListAssignerSelector

A WinForm called by ImageListAssigner class, the form will browse your specified folder for images or directories, display images (currently uses *.BMP as file extension). It's a replacement for ImageList's ImageCollection editor in VS.NET.

GlyFx (folder)

I have included GlyFx folder, which contains the Common, DB and Core image sets. GlyFx is copyrighted PerthWeb Pty Ltd (www.glyfx.com ). Some included images are in disabled state, for examples only, and for not re-distribution.

Using the component

A brief description above, ImageListAssigner needs for design-time, you can remove ImageListAssigner after images in your ImageList done. ImageListAssigner will display a short message in run-time mode to notify you it should be removed.

First, add an ImageList component to your Form, and also add ImageListAssigner to the same form. Then, select ImageListAssigner and open Properties editor window, and on the Destination property, select your last added ImageList.

Now, set true value for ShowDesign property. This action will bring up the ImageListAssignerSelector form. If this is first time, click on "Look in..." at the top most area of the dialog and select a directory which contains images. You can select GlyFx directory if you does not have any image folder. Select any folder that shows on folder tree, if it contain images, the images will show. Double-Click on image to select/de-select. Right-Click for more options.

Finally, click on Apply link button to save your selected images to the ImageList.

Wait! If you open ImageList's ImageCollection editor you will see no changes. I don't known how to notify VS.NET to update the ImageList resources (was changed by ImageListAssigner). But, any control that uses the ImageList will see all its images which was added by ImageListAssigner. To see changes of ImageList, save/close form and re-open it.

Demo project

Please open Test project included in ZIP file.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here