ASP .Net服务器控制事件顺序

时间:2008-09-24 15:35:22

标签: .net asp.net events

ASP .Net服务器控件的事件是什么?它们的顺序与包含页面的事件有什么关系?

具体问题是我在服务器控件中查找在包含页面的 Page_Load 事件之前触发的事件。

5 个答案:

答案 0 :(得分:5)

关于它们与Page事件的关系,至少对于Init和Load:

“尽管Init和Load都在每个控件上递归发生,但是它们以相反的顺序发生。每个子控件的Init事件(以及Unload事件)发生在为其容器引发相应的事件之前(自下而上)但是,容器的Load事件发生在其子控件的Load事件(自上而下)之前。“

来自http://msdn.microsoft.com/en-us/library/ms178472.aspx

答案 1 :(得分:1)

这应该有所帮助:http://msdn.microsoft.com/en-us/library/ms178472.aspx

我想,你正在寻找PreLoad。

答案 2 :(得分:1)

查看此page。它会让你知道什么事件发生时。看起来您可以使用PreLoad事件。

答案 3 :(得分:0)

这是一个小问题,因为控件可以在“Page_Load”事件之后放在页面内。

在我的一个历史性项目中,我从我的班级“PageEx:System.Web.UI.Page”中派生了所有页面。其中包含类型为“enum PageStates {PreInit,Init,PostInit,PreLoad,/ * etc ... * /}”的属性“CurrentState”。比我的所有控件都能识别页面循环状态。

答案 4 :(得分:0)

ASP.NET 2.0 Event Order有一个更长的列表(注意这是2.0)。