private Label Lb2(int a) //a是遍历数据库出来数字,用来生成新的标签
{
Label label = new Label();
label.Name = "L" + a;
label.Text = "XX";
label.Font = new Font("宋体", 9);
label.Location = new System.Drawing.Point(105, 25);
label.Size = new System.Drawing.Size(77, 30);
label.TextChanged += new EventHandler(labelTxt);
return label;
}
private void labelTxt(object sender, EventArgs e)
{
Label label = (Label)sender;
label.Text = label.Name;
}
运行之后是一片空白。。

c# 如何实时更新生成的label
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 於黾 2022-08-11 16:35关注
label.TextChanged事件没有意义,这个要等它的text变化时才会执行函数,而你的函数里写的就是让text变化
你这代码要么不执行,一执行就是个死循环,无限递归
你应该找到需要改变text的源头,在那里写事件来更新label,或者拖个timer出来,无脑定时更新本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用