page_load和onLoad之间的区别

时间:2010-08-12 05:12:08

标签: c# asp.net .net code-behind

ASP.NET代码隐藏中的page_load和onLoad函数有什么区别?

4 个答案:

答案 0 :(得分:21)

您应该阅读Page Lifecycle Overview了解更多信息。

这一点应该有助于澄清差异:

  

请注意,当事件处理程序是   使用Page_event语法创建,   基本实现是隐含的   叫,所以你不需要   在你的方法中调用它。对于   例如,基页类的OnLoad   无论你是否总是调用方法   是否创建Page_Load方法。   但是,如果您覆盖页面   使用覆盖的OnLoad方法   keyword(在Visual Basic中覆盖),   你必须明确地调用基数   方法。例如,如果您覆盖   你在页面上的OnLoad方法   必须调用base.Load(MyBase.Load in   Visual Basic)以便为基础   要实施的实施。

  

页面也支持自动事件   连线,意味着ASP.NET看起来   对于具有特定名称和的方法   在何时自动运行这些方法   某些事件被提出。如果   @的AutoEventWireup属性   Page指令设置为true,page   事件自动绑定到   使用命名约定的方法   Page_event,例如Page_Load和   Page_Init。

OnLoad是页面的一部分,并且始终被调用。您不需要具有Page_Load方法,该方法只是事件的可选扩展。

答案 1 :(得分:5)

加载是event而OnLoad是method,在调用时会引发该事件 它只是基类实现,当然也是如此 需要从派生类调用,以便事件起作用)

答案 2 :(得分:2)

它们处理相同的事件,但只有当AutoEventWireup =“true”时,Page_Load()才有效。

答案 3 :(得分:2)

OnLoad会触发Load事件,其中Page_Load是默认的事件处理程序。