C#中,怎样用变量来表示控件名称

hz_linuxsir 2007-05-18 12:18:39
我定义了一组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#中如何实现呢?
谢谢
...全文
2176 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hz_linuxsir 2007-05-18
  • 打赏
  • 举报
回复
((Label)FindControl[""+i]).Text="abcd";
这是我最渴望的效果,但是我这样写编译的时候说找不到FindControl定义,还有label没有定义的类,是不是要什么引用过来啊,
菜鸟,只懂一点点,还麻烦指教,谢谢!
hz_linuxsir 2007-05-18
  • 打赏
  • 举报
回复
谢谢,这种思路很不错。
还有一个问题,假如我的groupbox里面还有很多其它的控件,像button ,textbox之类的,混在一起我怎么能区分开呢?
还有其它的思路么?
刺客 2007-05-18
  • 打赏
  • 举报
回复
((Label)FindControl[""+i]).Text="abcd";
icehawk 2007-05-18
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/TopicView3.asp?id=5539308
juncochen 2007-05-18
  • 打赏
  • 举报
回复 2
把它们放入容器里,例如groupBox;
for (int i = 0; i < groupBox1.Controls.Count; i++)
{
groupBox1.Controls[i].Text = "";
}
phommy 2007-05-18
  • 打赏
  • 举报
回复
可以借用VB中的函数。
Label l = Microsoft.VisualBasic.Interaction.CallByName(this,"LableName" ,Microsoft.VisualBasic.CallType.Get) as Label;
hz_linuxsir 2007-05-18
  • 打赏
  • 举报
回复 1
谢谢!
我的意思是说,有可能在:
groupBox1.Controls[1]的时候我找到的是label5
groupBox1.Controls[2]的时候我找到的是label8
这样,我还要再去判断一下这个5或者8,然后再相应赋值
如果能直接由i定位到label,不用去遍历所有的控件就好了。。。
不知道这个要求对C#是不是太高了,呵呵
juncochen 2007-05-18
  • 打赏
  • 举报
回复
groupBox1.Controls[i].Text = "";这里改成你需要的操作就可以了
hz_linuxsir 2007-05-18
  • 打赏
  • 举报
回复
明白了,谢谢大家。
我总结了一下上面的两种方式,总觉得这样遍历所有的控件的方式,会不会存在效率的问题,能直接定位到那个控件么?(因为我得到这些label后还要作其它的操作,那样我还要再作判断,看看它到底是那一个label[i],这样就复杂了)
juncochen 2007-05-18
  • 打赏
  • 举报
回复
把它们放入容器里,例如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 = "";
}
hz_linuxsir 2007-05-18
  • 打赏
  • 举报
回复
原来我用的是2003,没有FindControl方式,唉,有没有其它的思路了?

111,104

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧