C#中在panel控件上动态创建100个小的panel控件!所以在加载时闪的厉害!!特求教高手帮

C#中在panel控件上动态创建100个小的panel控件!所以在加载时闪的厉害!!特求教高手帮,第1张

this.SuspendLayout()

// 加载panel

this.ResumeLayout()

this.PerformLayout()

wandsg@163.com

发代码看看

首先新建一个PictureBox控件

PictureBox pb = new PictureBox()

为这个控件添加一个点击事件

如:

pb.Click += new System.EventHandler(this.pictureBox_Click)//添加Click事件

有这个基础,那么动态创建多个控件也是一件容易的事情

代码如下:

/// <summary>

/// 图片创建控件,并初始化一共是96个

/// </summary>

private void createPicBoxList()

{

PictureBox pb = null

for (int j = 0j <8j++)

{

for (int i = 0i <12i++)

{

pb = new PictureBox()

pb.BackColor = Color.White

//通过这个标识记录不同的编号y在前面.记X从1开始索引,Y直接保存A...H这种

//已经转化为A1,A2,....H12这种格式,其中A的ASCII=65

pb.Tag = (Convert.ToChar(j + 65)).ToString() + (i + 1).ToString()

pb.Name = "pb"//通过这个Name标记所有PictureBox控件.

pb.Size = new Size(56, 56)//大小

pb.Location = new Point(i * 56, j * 56)//位置.

pb.Image = holesImg//初始化图片Bitmap或者Image对象

pb.Click += new System.EventHandler(this.pictureBox_Click)//添加Click事件

this.groupBox.Controls.Add(pb)//加载到groupBox容器内

}

}

}

以上各个参数根据自己实际需要修改,这里是仅是演示作用,上述代码中一共创建了96个控件和图片

第一步,想要添加什么对象,就先通过NEW关键字,实例化一个对象,创建一个对象的实体。

第二部,设置当前对象实体的属性值,事件等。

第三部,通过容器对象的Controls(该属性为一个集合)属性的Add方法添加你当前创建的对象实体。

这样,你就看到你动态添加了一个控件。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11648897.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存