问题描述
||
page = (Page)HttpContext.Current.CurrentHandler;
TextBox txtEndUser = ((TextBox)page.FindControl(\"txtEndUser\"));
txtEndUser
总是为空。
我们该如何解决呢?
解决方法
作为一种变通方法,如果您找不到使用ѭ2的方法,则可以将public getter添加到您的自定义页面类中,如下所示:
WebForm1 myForm = (WebForm1)HttpContext.Current.CurrentHandler;
TextBox txtEndUser = myForm.GetEndUserTextbox();
, 如果页面不直接包含TextBox
控件,那么您将无法使用FindControl
函数来检索它。您需要创建一个函数来搜索包含在容器中的目标控件。
, 在我看来,此代码段位于HttpModule
中,因此,该请求可能尚未提交给处理程序(例如,您位于BeginRequest
中)。
参考:为什么HttpContext.Current.Handler为null?