【发布时间】:2012-07-04 16:34:03
【问题描述】:
我知道 Page PreRender 事件以及重写 OnPreRender,但不知道 Page_PreRender 方法的存在。最近在浏览这个论坛时,我发现并搜索了两者之间的区别,但没有得到太多?
这是我的观察:
我有一个标签为 Label1 的页面。
场景 1:
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = "load ";
}
protected override void OnPreRender(EventArgs e)
{
Label1.Text += "OnPreRender ";
base.OnPreRender(e);
}
private void Page_PreRender(object sender, System.EventArgs e)
{
Label1.Text += "Page_PreRender ";
}
Lable1 的值是:load OnPreRender Page_PreRender
场景 2:
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = "load ";
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
Label1.Text += "OnPreRender ";
}
private void Page_PreRender(object sender, System.EventArgs e)
{
Label1.Text += "Page_PreRender ";
}
注意base.OnPreRender(e)的调用顺序;
Lable1 的值为:load Page_PreRender OnPreRender
只能说base.OnPreRender(e)是在调用Page_PreRender(),但不是私有的吗?
有人可以告诉,两者之间有什么区别以及何时使用哪个? 一般应该用哪一个?
【问题讨论】:
标签: asp.net