|
記得最開(kāi)始學(xué)習(xí)ASP.NET的時(shí)候,我們就被告知:Page_Load方法里面可以寫(xiě)頁(yè)面加載的代碼。
于是我們就懵懵懂懂寫(xiě)了很長(zhǎng)時(shí)間的Page_Load方法。最近回過(guò)頭思考,為什么一個(gè)普通的方法,能被自動(dòng)調(diào)用呢?于是就得知了AutoEventWireup屬性。
%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.ASPx.cs" Inherits="Default" %
一般我們新建頁(yè)面的時(shí)候,AutoEventWireup就為true。MSDN的解釋是:指示控件的事件是否自動(dòng)匹配(Autowire)。如果啟用事件自動(dòng)匹配,則為 true;否則為 false。默認(rèn)值為 true。那么我們先得到一個(gè)結(jié)論是:AutoEventWireup為true時(shí),Page_Load、Page_Init之類(lèi)的方法名能被自動(dòng)調(diào)用。
下面我們反編譯源代碼來(lái)看看里面是怎么回事。首先反編譯所有頁(yè)面的父類(lèi):Page類(lèi)。
public class Page : TemplateControl, IHttpHandler { }
NET技術(shù):OnLoad與Page_Load的差異分析,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。