我有很多textbox,想将他们循环进行操作,请问如何将他们的id写成一个变量的形式,来实现循环???、
int i;
textbox i ?????
不会写,求教!!!!

解决方案 »

  1.   

    textbox动态生成的话是可以的
    for(int i=0;i<10;i++)
    {
    TextBox tb = new TextBox();
    tb.Name = "txt" + i.ToString();
    }
      

  2.   

    我尽量不在Csdn这类地方提到反射,因为这很容易被滥用。一旦被滥用,就是一锅鲜美的汤中撒上了老鼠屎,你会后悔不已。即使在我自己的程序中,遇到你这种问题,我一定会老老实实地去写代码。不过就是代码“复制、粘贴”嘛,有什么复杂的。或者就算搞复杂一点,我可能会在程序中定义一个集合private List<TextBox> MyTextboxs= new List<TextBox>{ txtABC, txtDEF, ........};  这里重复进行键盘复制粘贴操作然后就可以对这个MyTextboxs变量进行foreach循环处理了。看上去,反射会更“简单”。但是那是以牺牲“强类型编程”为代价的。这就好像用伪娘来代替真正的娘们儿,已经变了性质了。你无法在程序设计时、反复运行测试之前就看到代码设计错误,你的程序往往在用户执行时才在人家面前崩溃、丢脸,所以我尽量不使用反射等等弱类型代码,即使“万不得已黔驴技穷的时候”也不会轻易使用反射。
      

  3.   

    string userName="txtUserName";
    TextBox txtBox = Page.FindControl(userName) as TextBox;