日期:2014-05-20  浏览次数:20695 次

关于反射,请教个问题
在窗体中我添加了N个TextBox,并且名称类似,如下
protected   System.Web.UI.WebControls.TextBox   TextBox1;
protected   System.Web.UI.WebControls.TextBox   TextBox2;
protected   System.Web.UI.WebControls.TextBox   TextBox3;
protected   System.Web.UI.WebControls.TextBox   TextBox4;
protected   System.Web.UI.WebControls.TextBox   TextBox5;
protected   System.Web.UI.WebControls.TextBox   TextBox6;
protected   System.Web.UI.WebControls.TextBox   TextBox7;

如果我在某个事件处理中想使用上面定义的TextBox,我想只通过TextBox的名字就获取对应的控件,以此获取其值,请问该如何写?

如:
for(int   i=0;i <7;i++)
{
TextBox   t   =   ...( "TextBox "+i.ToString());
string   ss   =   t.Text;
}

------解决方案--------------------

for(int i=0;i <7;i++)
{
Control temp_control = FindControl( "TextBox "+i.ToString());
string ss =((TextBox)temp_control).Text;
}