日期:2014-05-18  浏览次数:20491 次

救助:FindControl遇到的麻烦
在有母版页有CS代码中
我要查找控件,该怎么做啊

 TextBox txt = (TextBox)this.FindControl("txtThesaurus1");这样是查找不到的

应为有母版页txtThesaurus1变成了_ctl0:cph1:txtThesaurus1
 
我如果用 TextBox txt = (TextBox)this.FindControl("_ctl0:cph1:txtThesaurus1");就能查找成功

请大家帮我解决

------解决方案--------------------
是这样的,你的页面就等于内嵌母版页的一个控件,控件内的控件要加母版明的
------解决方案--------------------
ContentPlaceHolder c = (ContentPlaceHolder)Master.FindControl("ContentPlaceHolder1"); 
TextBox t2 = (TextBox)c.FindControl("TextBox1");

------解决方案--------------------
上面的代码是找到母板页中ContentPlaceHolder内的控件。
如果找的控件不在ContentPlaceHolder内可以这样写:
TextBox t1 = (TextBox)Master.FindControl("aaa");