日期:2014-05-18  浏览次数:21149 次

批量修改lable标签背景颜色。
RT,Lable命名规格是Lable1,label2……Lable100.要动态的修改其中的一些Lable标签的背景颜色。是动态的修改。所以不能用foreach修改。
举个例子吧。
for(i = 0;i <5 ;i++)
{
  Label lb = new Label();
  lb.Name = "label" + (i + 1);
  lb.BackColor = Color.Red;
}
这个当然是不对的。但是要表达的意思就是用for循环控制我想要的那几个的背景色。
谢谢回答。

------解决方案--------------------
探讨
未处理NullReferenceException
未将对象引用设置到对象的实例
for (int i = 0; i < 5; i++)
{
string str = "Label" + (i + 1);
Label lbl = this.Controls[str] as Label;
lbl.BackColor = System.Drawing.Color.Red;……

------解决方案--------------------
private void button3_Click(object sender, EventArgs e)
{
for (int i = 1; i < 5; i++)
{
string str = "label" + i.ToString() ;
Label lbl = this.Controls[str] as Label;
lbl.BackColor = Color.Red;
}
}