Page 执行中将按照如下顺序激活事件:
  1. Page.PreInit   
  2. Page.Init   
  3. Page.InitComplite   
  4. Page.PreLoad   
  5. Page.Load   
  6. Page.LoadComplete   
  7. Page.PreRender   
  8. Page.PreRenderComplete  

如果页面从令一个页面继承,如BasePage:System.Web.UI.Page,在BasePage中做了一些扩展,如权限检查,而其他页面从BasePage继承,则BasePage和最终Page的事件激活顺序是:

BasePage和最终Page的事件激活顺序
  1. UI.PreInit   
  2. Page.PreInit   
  3. UI.Init   
  4. Page.Init   
  5. UI.InitComplite   
  6. Page.InitComplite   
  7. UI.PreLoad   
  8. Page.PreLoad   
  9. UI.Load   
  10. Page.Load   
  11. UI.LoadComplete   
  12. Page.LoadComplete   
  13. UI.PreRender   
  14. Page.PreRender   
  15. UI.PreRenderComplete   
  16. Page.PreRenderComplete  

如果使用了MasterPage,则MasterPage中的事件和ContentPage中的事件按照下面顺序激活:

MasterPage中的事件和ContentPage中的事件激活顺序:
  1. ContentPage.PreInit   
  2. Master.Init   
  3. ContentPage.Init   
  4. ContentPage.InitComplite   
  5. ContentPage.PreLoad   
  6. ContentPage.Load   
  7. Master.Load   
  8. ContentPage.LoadComplete   
  9. ContentPage.PreRender   
  10. Master.PreRender   
  11. ContentPage.PreRenderComplete  

更进一步,如果ContentPage继承BasePage,那么,各事件的执行顺序将变成:

ContentPage继承BasePage执行顺序:
  1. UI.PreInit   
  2. ContentPage.PreInit   
  3. Master.Init   
  4. UI.Init   
  5. ContentPage.Init   
  6. UI.InitComplite   
  7. ContentPage.InitComplite   
  8. UI.PreLoad   
  9. ContentPage.PreLoad   
  10. UI.Load   
  11. ContentPage.Load   
  12. Master.Load   
  13. UI.LoadComplete   
  14. ContentPage.LoadComplete   
  15. UI.PreRender   
  16. ContentPage.PreRender   
  17. Master.PreRender   
  18. UI.PreRenderComplete   
  19. ContentPage.PreRenderComplete  

 

原文地址:http://www.cnblogs.com/wf225/archive/2007/12/06/984781.html