bra*_*her 8 asp.net null controls preinit
如何在ASP.NET PreInit事件中获得控制权?指针为null,FindControl方法返回null.
我正在使用主页和内容页面.内容页面的标记如下所示:
<asp:Content ID="Content2" ContentPlaceHolderID="ContentBody" runat="server">
<asp:Table ID="Table1" runat="server" Width="100%">
.....
</asp:Table>
</asp:Content>
Run Code Online (Sandbox Code Playgroud)
像这样的代码:
private void Page_PreInit(object sender, EventArgs e)
{
Control table = this.FindControl("Table1");
//table is null here
}
Run Code Online (Sandbox Code Playgroud)
因此,在this.FindControl("Table1")之后,表仍然为null.该页面的NamingContainer也为null.我究竟做错了什么?
更新我必须使用此事件来创建控件.如ASP.NET页面生命周期概述中所述,此事件应用于动态控件创建.我需要在表格中创建一个链接列表.可能还有另一种方法吗?
在初始化控件之前会触发PreInit。阅读ASP.NET页面生命周期以获取更多详细信息。
初始化
在初始化所有控件并应用任何外观设置之后引发。各个控件的Init事件发生在页面的Init事件之前。使用此事件读取或初始化控件属性。