ImageList 图片容器控件

ImageList 图片容器控件

ImageList 是一个图片容器控件,可以向里面添加图片,也可以在代码中动态添加图片。添加后可以在程序中引用这些图片。

设计器中添加图片

点击控件右上角的小三角,选择”图像”即可打开图像集合编辑器,手动添加图片资源。

后台代码中动态添加

private void Form1_Load(object sender, EventArgs e)
{
    this.imageList1.Images.Add(Image.FromFile(@"C:\images\pic1.png"));
    this.imageList1.Images.Add(Image.FromFile(@"C:\images\pic2.png"));
}Code language: JavaScript (javascript)

使用图片

private void Form1_Load(object sender, EventArgs e)
{
    this.BackgroundImage = this.imageList1.Images[0];
}Code language: JavaScript (javascript)

以上示例使用第一张图片(Images[0])来设置窗体的背景。

常用属性

属性说明
Images图片集合,通过索引访问
ImageSize图片尺寸,默认 16×16,可统一设置为 32×32 等
ColorDepth颜色深度(Depth4Bit、Depth8Bit、Depth16Bit、Depth24Bit、Depth32Bit)
TransparentColor透明色设置
this.imageList1.ImageSize = new Size(32, 32);
this.imageList1.ColorDepth = ColorDepth.Depth32Bit;Code language: JavaScript (javascript)

常用方法

方法说明
Images.Add(Image)添加图片
Images.Add(Image, Color)添加图片并指定透明色
Images.Clear()清空所有图片
Images.RemoveAt(int)移除指定索引的图片
Images.Count获取图片数量

典型用途

ImageList 常配合以下控件使用,为它们提供图标资源:

  • ListView — 设置 LargeImageList 和 SmallImageList
  • TreeView — 设置 ImageList 和 StateImageList
  • ToolBar / MenuStrip — 为按钮和菜单项提供图标
  • Button — 通过 ImageList 和 ImageIndex 关联图片
// 配合 ListView 使用
listView1.LargeImageList = imageList1;
listView1.SmallImageList = imageList1;

ListViewItem item = new ListViewItem("项目1", 0); // 0 对应 imageList1.Images[0]
listView1.Items.Add(item);Code language: JavaScript (javascript)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注