嗨嗨~大家好,
今天要來介紹 ASP.NET 頁面生命週期的幾個階段行為。
Page_Init: 在每個控制項初始化後,會觸發本事件。可用來讀取或初始化控制項的屬性。
Page_Load: 頁面物件本身、每個控制項載入後,都會觸發本事件。控制項的載入事件會比頁面的事件晚觸發。
IsPostBack
!)。IsPostBack
,去避免不必要的重設狀態。
Page_load
再進入各控制項的 Event)控制項 PostBack: 控制項有設定 AutoPostBack
的屬性為 true
時,控制項的每個事件都會造成 PostBack。
AutoPostBack
:asp.net - Difference between AutoPostBack=True and AutoPostBack=False? - Stack Overflow
若啟用控制項的
AutoPostBack
,.NET Framework 會自動產生在 HTML 內產生程式碼,包含:
- 一個命名為
__doPostBack (eventtarget, eventargument)
的 JavaScript- 兩個隱藏變數,名稱為
__EVENTTARGET
和__EVENTARGUMENT
(觸發事件的來源和參數,可在 Page_Load 的事件參數內查詢)- 控制項的
OnChange
JavaScript 事件
OnPreRender: 準備被繪製到頁面上。
DataSourceID
的控制項會綁定資料。改寫自: Page Life Cycle In ASP.NET