C#中Imagelist控件详解,让你一看就会!

一、使用编译器自动生成imagelist控件

1、首先拖入一个imagelist控件,其将在窗口下面分栏显示:
在这里插入图片描述
在这里插入图片描述
2、插入一些图片:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、系统自己生成的代码:

private void InitializeComponent()
       {
           this.components = new System.ComponentModel.Container();
           System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
           this.imageList1 = new System.Windows.Forms.ImageList(this.components);
           this.SuspendLayout();
           // 
           // imageList1
           // 
           this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
           this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
           this.imageList1.Images.SetKeyName(0, "10000.png");
           this.imageList1.Images.SetKeyName(1, "10001.png");
           this.imageList1.Images.SetKeyName(2, "10002.png");
           this.imageList1.Images.SetKeyName(3, "10003.png");
           this.imageList1.Images.SetKeyName(4, "10004.png");
           this.imageList1.Images.SetKeyName(5, "10005.png");
           this.imageList1.Images.SetKeyName(6, "10006.png");
           this.imageList1.Images.SetKeyName(7, "10007.png");
           this.imageList1.Images.SetKeyName(8, "10008.png");
           this.imageList1.Images.SetKeyName(9, "10009.png");
           this.imageList1.Images.SetKeyName(10, "10010.png");
           this.imageList1.Images.SetKeyName(11, "10011.png");
           this.imageList1.Images.SetKeyName(12, "10012.png");
           this.imageList1.Images.SetKeyName(13, "10013.png");
           this.imageList1.Images.SetKeyName(14, "10014.png");
           this.imageList1.Images.SetKeyName(15, "10015.png");
           this.imageList1.Images.SetKeyName(16, "10016.png");
           this.imageList1.Images.SetKeyName(17, "10017.png");
           this.imageList1.Images.SetKeyName(18, "10018.png");
           this.imageList1.Images.SetKeyName(19, "10019.png");
           this.imageList1.Images.SetKeyName(20, "10020.png");
           this.imageList1.Images.SetKeyName(21, "10021.png");
           this.imageList1.Images.SetKeyName(22, "10022.png");
           this.imageList1.Images.SetKeyName(23, "10023.png");
           this.imageList1.Images.SetKeyName(24, "10024.png");
           this.imageList1.Images.SetKeyName(25, "10025.png");
           this.imageList1.Images.SetKeyName(26, "10026.png");
           this.imageList1.Images.SetKeyName(27, "10027.png");
           this.imageList1.Images.SetKeyName(28, "10028.png");
           this.imageList1.Images.SetKeyName(29, "10029.png");
           this.imageList1.Images.SetKeyName(30, "10030.png");
           this.imageList1.Images.SetKeyName(31, "10031.png");
       }

       #endregion
       
       private System.Windows.Forms.ImageList imageList1;
   }

二、动态创建imagelist控件

ImageList ImageList1 = new ImageList();
ImageList1.ImageSize = new Size(50,50);
//声明一个字符串,用来保存图片路径
string path;
for (int i = 0; i < 32; i++)
{
    if (i<10)
    {
        path = String.Concat("../../images/Bomb/1000", i.ToString(), ".png");
    }
    else
    {
        path = String.Concat("../../images/Bomb/100", i.ToString(), ".png");
    }
    imageList.Images.Add(Image.FromFile(path));
}

用代码创建一个ImageList实例,规定图标大小50×50,接着使用ImageList.Images.Add方法加入Image对象,这边使用文件路径生成Image对象。

三、ImageList常用的方法大多在 ImageList.Images下

方法:

  • ImageList.Images.Add:加入图像
  • ImageList.Images.Clear: 清除图像
  • ImageList.Images.Draw: 绘制指示的图像
  • ImageList.Images.ContainsKey: 确定是否包含指定键的图像
  • ImageList.Images.IndexOfKey:确定包含指定键的图像的序号
  • ImageList.Images.RemoveAt:删除指定序号的图像
  • ImageList.Images.RemoveByKey:删除指定键的图像
  • ImageList.Images.SetKeyName:为指定序号的图像设置键名

属性:

  • ImageList.Images.Count: 集合中包含的图像数
  • ImageList.Images.Empty:集合中是否包含图像
  • 4
    点赞
  • 24
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:成长之路 设计师:Amelia_0503 返回首页
评论

打赏作者

何极光

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值