谁知道 请教高手 给段代码

解决方案 »

  1.   

    不会没有高手知道吧?我要取动态创建的textbox 的值 
    哪个大哥给各例子了
      

  2.   

    TextBox tb;
    tb=(TextBox)this.FindControl(dr["dtname"].ToString());
    temp=tb.Text.ToString();
    不知这样是不是能解决你的问题
    dr["dtname"].tostring()是控件的ID,
    你换成你动态创建的TextBox的ID就行了
    把这段代码放到你创建的TextBox中进行遍历取值就OK了
      

  3.   

    foreach(Control ctl in yourform.Controls)
    {
       if(ctl is TextBox)
       {
         //处理它的(TextBox)ctl.Text 不知道行不行
       }}
      

  4.   

    同意  iget(悟不透) ( ) 信誉:100  ps:如果遇到容器,比如panel 则需要递归遍历private void findcontrol(Control ctl){
      foreach(Control c in ctl.Controls){
        if(c is Panel)findcontrol(c); //递归
        if(c is TextBox)(c as TextBox).Text = ""; //直接访问textbox组件
      }
    }
      

  5.   

    GroupBox 也是一个容器,也要递归遍历所以,上面的代码应写为private void OperateControls(Control control)
    {
     foreach(Control c in control.Controls)
     {
      if(c is Panel)
      {
       OperateControls(c);
      }
      if(c is GroupBox)
      {
       OperateControls(c);
      }
      if(c is TextBox)
      {
       // 它是 TextBox, 要干什么随便你
      }
     }
    }调用时用:
    OperateControls(this);
      

  6.   

    谢谢了阿我使用的
    private void FindButton(Control c)
    {
    if (c.Controls != null)
    {
    //
    foreach(Control x in c.Controls)
    {
    if (x is TextBox)
    {
    sss=sss+((TextBox)x).Text;
    }
    if (x is DropDownList)
    sss=sss+((DropDownList)x).SelectedValue;
    FindButton(x);

      }
       }
    }
    调用:FindButton(this);