用代码生成的lable,如何给她注册事件?
用代码生成的lable,如何给她注册事件?比如:
Label lable = new Label(); //新建lable
for (int i =1; i < 100; i++)
{
lable.Name = "lable" + i; //给lable 命名
lable.AutoSize = false;
lable.Location = new Point(2, 66);
lable.Size = new Size(298, 64);
lable.TextAlign = ContentAlignment.MiddleCenter;
lable.Text = "haole";
lable.Font = new Font("宋体", 15);
lable.BorderStyle = BorderStyle.Fixed3D;
this.Controls.Add(lable); //窗体创建lable
this.button1.Location = new Point(lable.Location .X, lable.Location.Y + 67);
}
我想给新建的lable i注册click事件,我该怎么注册?
Label lable = new Label(); //新建lable
for (int i =1; i < 100; i++)
{
lable.Name = "lable" + i; //给lable 命名
lable.AutoSize = false;
lable.Location = new Point(2, 66);
lable.Size = new Size(298, 64);
lable.TextAlign = ContentAlignment.MiddleCenter;
lable.Text = "haole";
lable.Font = new Font("宋体", 15);
lable.BorderStyle = BorderStyle.Fixed3D;
this.Controls.Add(lable); //窗体创建lable
this.button1.Location = new Point(lable.Location .X, lable.Location.Y + 67);
}
我想给新建的lable i注册click事件,我该怎么注册?
...全文
请发表友善的回复…
发表回复
damao_94 2019-10-22
- 打赏
- 举报
代码生成的lablel基本上是不能用他的name调用,只能把他存放到一个list<label>里面,再像listlabel[1].进行调用
货郎大叔 2019-09-11
- 打赏
- 举报
sender转换成label
stherix 2019-09-11
- 打赏
- 举报
事件里 sender就是源控件
(sender as Label)可以获取到
qq_41222758 2019-09-11
- 打赏
- 举报
我刚试了一下,注册了事件,但是我想改变这个lable的颜色的时候,发现没有这个控件啊
stherix 2019-09-11
- 打赏
- 举报
lable.OnClick += 按两次Tab
by_封爱 版主 2019-09-11
- 打赏
- 举报
name就是一个控件的唯一标识 你给不重复的即可... 无实际意义
一般都用固定名+数字.. 因为可以循环findcontrol
qq_41222758 2019-09-11
- 打赏
- 举报
TO:封爱,还有一点,我用代码动态生成的多个lable,他的name属性是多少?我怎么像调用lable1,lable2那样调用生成的lable?帮忙解决,多给积分!
by_封爱 版主 2019-09-11
- 打赏
- 举报
代码有问题
首先
Label label= new Label();
for (int i =1; i < 100; i++)
{
label.xxxx
}
你这种方式的话.最终页面肯定只有一个(最后一个)label显示,其他都覆盖掉了吧?
因为自始至终也只有一个label..
其次给label事件 可以采用label.click+= 2次tab生成一个事件
或者
label.click+=(sender,event)=>{
//你的代码
};
当然 你点点击某个label 就执行当label的事件 那么你需要把sender转换成label
label.click+=(sender,event)=>{
var lb=sender as Label ;
//lb里的属性 就是你for循环赋值的属性...
};
大鱼> 2019-09-11
- 打赏
- 举报
https://blog.csdn.net/wsp2359482671/article/details/78679110
大鱼> 2019-09-11
- 打赏
- 举报
就是你再拖拽的时候自动增加的代码用手敲出来
正怒月神 2019-09-11
- 打赏
- 举报
用代码给他加事件啊。。。。
就是 xxx.Click+=你自己定义的事件
巴士上的邂逅 2019-09-11
- 打赏
- 举报
是不是需要把Label lable = new Label();放进for里面