C#中,怎样用变量来表示控件名称
我定义了一组label,label1,label2,label3.....
我现在想通过for 循环来设置 它们的属性
for (int i=0;i <20;i++ )
{
label[i].text= "abcd "; //就是这个意思,但是这样表达肯定是不行的
}
请各位大哥指点一下怎么样才能调用呢,我搜到了一些,例如
//tedit(findcomponent( "label " +inttostr(i))).Visible=false;
还有vb里面的实现方式,但是在C#中如何实现呢?
谢谢
------解决方案--------------------把它们放入容器里,例如groupBox;
for (int i = 0; i < groupBox1.Controls.Count; i++)
{
groupBox1.Controls[i].Text = " ";
}
------解决方案--------------------http://community.csdn.net/Expert/TopicView3.asp?id=5539308
------解决方案--------------------((Label)FindControl[ " "+i]).Text= "abcd ";
------解决方案--------------------把它们放入容器里,例如groupBox;
for (int i = 0; i < groupBox1.Controls.Count; i++)
{
groupBox1.Controls[i].Text = " ";
}
在循环体内加一个判断
for (int i = 0; i < groupBox1.Controls.Count; i++)
{
if(groupBox1.Controls[i] is Label)
groupBox1.Controls[i].Text = " ";
}
------解决方案--------------------groupBox1.Controls[i].Text = " ";这里改成你需要的操作就可以了
------解决方案--------------------可以借用VB中的函数。
Label l = Microsoft.VisualBasic.Interaction.CallByName(this, "LableName " ,Microsoft.VisualBasic.CallType.Get) as Label;