在ASP中每個頁面都派生自Page類,並繼承這個類公開的所有方法和屬性。Page 類與擴展名為 .aspx 的文件相關聯,這些文件在運行時被編譯為 Page 對象,並被緩存在服務器內存中。
Page類常用的屬性:
IsPostBack,該屬性可以檢查.aspx頁是否為傳遞回服務器的頁面,常用於判斷頁面是否為首次加載。
IsValid,該屬性用於判斷頁面中的所有輸入的內容是否應經通過驗證,它是一個布爾值的屬性。當需要使用服務器端驗證時,可以使用該屬性。
IsCrossPagePostBack,該屬性判斷頁面是否使用跨頁提交,它是一個布爾值的屬性。
Page類常用的事件及執行的先后順序:
Page.PreInit
在頁初始化開始時發生
Page.Init
當服務器控件初始化時發生;初始化是控件生存期的第一步。 (繼承自 Control。)
Page.InitComplite
在頁初始化完成時發生
Page.PreLoad
在頁 Load 事件之前發生
Page.Load
當服務器控件加載到 Page 對象中時發生。 (繼承自 Control
Page.LoadComplete
在頁生命周期的加載階段結束時發生
Page.PreRender
在加載 Control 對象之后、呈現之前發生。 (繼承自 Control。)
Page.PreRenderComplete
在呈現頁內容之前發生。
使用MasterPage時,MasterPage與ContentPage的事件執行順序
事件名稱
ContentPage.PreInit
MasterPage.Init
ContentPage.Init
ContentPage.InitComplite
ContentPage.PreLoad
ContentPage.Load
MasterPage.Load
ContentPage.LoadComplete
ContentPage.PreRender
MasterPage.PreRender
ContentPage.PreRenderComplete
使用繼承自BasePage的Page,BasePage與Page的事件執行順序
對應“1、單獨的aspx頁面”的順序,先執行 BasePage的事件,再執行Page的事件。
使用繼承自BasePage的Page作為MasterPage的 ContentPage時
對應“2、使用MasterPage時,MasterPage與ContentPage的事件執行順序”,ContentPage的執行順序是先BasePage后Page。
Web窗體的生命周期實際上就是Page對象的創建及銷毀的全過程。
