【发布时间】:2011-12-11 16:29:04
【问题描述】:
在MSDN page lifecycle reference 中声明 pre-init 用于“创建或重新创建动态控件”。
但是,elsewhere on MSDN,一个示例暗示应该在 Page_Load 中加载动态用户控件
这是矛盾的吗?还是 pre-init 仅用于标准 aspx 控件?
我错过了什么:)
编辑: 然而,无论哪种方式都有效,但一种方法可能比另一种方法有一些好处。
(WebUserControl1 是一个带有简单标签属性的 UserControl,SomeProperty)
protected override void OnPreInit(EventArgs e)
{
base.OnPreInit(e);
WebUserControl1 wc1 = LoadControl(@"~\WebUserControl1.ascx") as WebUserControl1;
wc1.SomeProperty = "Hello World";
Controls.Add(wc1);
}
protected void Page_Load(object sender, EventArgs e)
{
WebUserControl1 wc1 = LoadControl(@"~\WebUserControl1.ascx") as WebUserControl1;
wc1.SomeProperty = "Hello World";
Controls.Add(wc1);
}
【问题讨论】:
标签: asp.net user-controls webforms page-lifecycle