Asp.net頁面周期事件

來源:互聯網
上載者:User

在頁生命週期的每個階段中,頁將引發可運行您自己的代碼進行處理的事件。對於控制項事件,通過以聲明方式使用屬性(如 onclick)或以使用代碼的方式,均可將事件處理常式綁定到事件。

頁還支援自動事件串連,即,ASP.NET 將尋找具有特定名稱的方法,並在引發特定事件時自動運行這些方法。如果 @ Page 指令的 AutoEventWireup 屬性設定為 true(或者如果未定義該屬性,因為預設情況下為 true),頁事件將自動綁定至使用 Page_event 命名規範的方法,如 Page_Load 和 Page_Init。有關自動事件串連的更多資訊,請參見 ASP.NET Web 伺服器控制項事件模型。

下表列出了最常用的頁生命週期事件。實際的事件比列出的事件要多。但是,它們不用於大多數頁處理方案。而是主要由 ASP.NET 網頁上的伺服器控制項使用,以初始化和呈現它們本身。如果要編寫自己的 ASP.NET 伺服器控制項,則需要詳細瞭解這些階段。有關建立自訂控制項的資訊,請參見開發自訂 ASP.NET 伺服器控制項。

頁事件

典型使用

Page_PreInit

·使用 IsPostBack 屬性確定是否是第一次處理該頁。

·建立或重新建立動態控制項。

·動態設定主控頁。

·動態設定 Theme 屬性。

·讀取或設定設定檔屬性值。

注意:如果請求是回傳請求,則控制項的值尚未從檢視狀態還原。如果在此階段設定控制項屬性,則其值可能會在下一階段被改寫。

Page_Init

·讀取或初始化控制項屬性。

Page_Load

·讀取和更新控制項屬性。

Control events

執行特定於應用程式的處理:

·如果頁包含驗證程式控制項,請在執行任何處理之前檢查頁和各個驗證控制項的 IsValid 屬性。

·處理特定事件,如 Button 控制項的 Click 事件。

Page_PreRender

·對頁的內容進行最後更改。

Page_Unload

執行最後的清理工作,可能包括:

·關閉開啟的檔案和資料庫連接。

·完成日誌記錄或其他特定於請求的任務。

注意:在卸載階段,頁及其控制項已被呈現,因此無法對響應流做進一步更改。如果嘗試調用方法(如 Response.Write 方法),則該頁將引發異常。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.