asp.net C#主版頁面和內容頁事件排版載入順序生命週期

來源:互聯網
上載者:User

標籤:io   ar   os   sp   on   問題   cti   代碼   ad   

asp.net C#主版頁面和內容頁事件排版載入順序生命週期

關於ASP頁面Page_Load發生在事件之前而導致的問題已經喜聞樂見,對於問題的解釋也很全面,但是如何解決問題則較少有人說明,我就再

簡單說明一下解決方案。以下是內容頁和主版頁面(如果有)的事件發生順序:
ContentPage.PreInit
Master.Init
ContentPage.Init
ContentPage.InitComplite
ContentPage.PreLoad
ContentPage.Load
Master.Load
ContentPage.LoadComplete
ContentPage.PreRender
Master.PreRender
ContentPage.PreRenderComplete

就算知道了發生順序對新手來說也不能怎麼樣,那麼下面重點就來了:
我們都會發現頁面後台有個protected void Page_Load(object sender, EventArgs e)方法
通常大家會把頁面載入時需要做的處理代碼寫在裡面,但是這個方法發生在click事件之前,就導致了很多小問題
那麼有沒有方法是發生在事件之後呢?答案是肯定的:
protected void Page_LoadComplete(object sender, EventArgs e)
是不是很簡單?但是這個方法仍然發生在母片載入之前,如果彈出對話方塊會導致母片排版混亂,那麼用下面這個就好了
protected void Page_PreRenderComplete(object sender, EventArgs e)

於是關於生命週期的問題都迎刃而解,代碼理解起來也流暢多了
以下是頁面載入過程中會啟用的一些方法執行順序,需要在頁面特定階段寫代碼的話可以用上:
protected void Page_Init(object sender, EventArgs e)
protected void Page_Load(object sender, EventArgs e)
各種使用者自訂的控制項click事件
protected void Page_LoadComplete(object sender, EventArgs e)
protected void Page_PreRender(object sender, EventArgs e)
protected void Page_PreRenderComplete(object sender, EventArgs e)
protected void Page_Unload(object sender, EventArgs e)
protected void Page_Error(object sender, EventArgs e)
protected void Page_AbortTransaction(object sender, EventArgs e)
protected void Page_CommitTransaction(object sender, EventArgs e)
protected void Page_DataBinding(object sender, EventArgs e)
protected void Page_Disposed(object sender, EventArgs e)

以上:D更多問題歡迎QQ交流,176457718

asp.net C#主版頁面和內容頁事件排版載入順序生命週期

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.