动态生成了一个TextBox控件,把它加到了Table控件的某一单元格(tableCell)中.
代码如下:
tableCell.Controls.Add(textBox);
当在一个事件中想输出textBox.Text。
代码如下:
tableCell.Controls[0].Text
运行出错Controls[0]并不包括Text属性.
但我用Response.Write(tableCell.Controls[0].ToString())输出时,是一个TextBox控件

解决方案 »

  1.   

    tableCell.Controls.Add(New TextBox());
      

  2.   

    做好用for循环枚举所有的子控件foreach(Control ctrl in tableCell.Controls)
    {
         if(ctrl.GetType() == typeof(TextBox))
             // 输入 Text
             Control.WriteLine(((TextBox)ctrl).Text);
    }
      

  3.   

    强类型,说明 Controls[0] 的类型,不然编译通不过。c# 是完全的强类型的,而vb不是。所以vb可以这样访问 .text 而 c#不可。
      

  4.   

    c# 只认识到 tableCell.Controls[0] 是一个System.WEB.UI.Control 类型的对象,找不到Text属性签名。vb也是找不到,但是会自动编译成“后期绑定”的程序。在这方面,我比较欣赏 c# 的做法。vb虽然方便,但是大大增加了出错的机会。
      

  5.   

    http://www.cnblogs.com/lovecherry/archive/2005/04/16/138968.html
      

  6.   

    ((TextBox)tableCell.Controls[0]).Text;
      

  7.   

    To:All
    谢谢大家,这的问题基本解决,但我更改了TextBox 的内容.
    Response.Write(((TextBox)ctrl).Text);结果还是原来的内容?
      

  8.   

    To:All
    谢谢大家,这的问题基本解决,但我更改了TextBox 的内容.
    Response.Write(((TextBox)ctrl).Text);结果还是原来的内容?
      
     这个问题比较郁闷,我也遇到了,是DataGrid中的问题:http://community.csdn.net/Expert/topic/4231/4231662.xml