日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

也谈ASP.NET页面事件

發布時間:2024/4/17 asp.net 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 也谈ASP.NET页面事件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

接觸.Net時間不久,有關頁面事件的知識,跟大家分享一下。

一個ASP.NET頁面在運行時將經歷一個生命周期,在生命周期中將執行一系列處理步驟。這些步驟包括初始化、實例化控件、還原和維護狀態、運行事件處理程序代碼以及呈現頁面。在頁生命周期的每個階段中將引發一些事件,事件被引發時會運行程序員提供的事件處理代碼。頁面還支持自動事件連接,即ASP.NET將尋找具有特定名稱的方法,并在引發特定事件時自動運行這些方法。如果@Page指令的AutoEventWireup屬性設置為 true(若未定義該屬性則默認為 true),頁面事件將自動綁定至使用“Page_event”命名約定的方法,如 Page_Load 和 Page_Init。如AutoEventWireup屬性設置為false,則頁面對應.aspx.cs類中的對應事件的方法將不自動執行。 下表列出了主要的頁面生命周期事件。

頁 事 件

典 型 用 場

Page_PreInit

使用IsPostBack屬性確定是否是第一次處理該頁;創建動態控件;動態設置Theme屬性;讀取或設置配置文件屬性值等

Page_Init

讀取或初始化控件屬性

Page_Preload

事件在所有回發數據處理之后但在 Load 事件之前引發

Page_Load

讀取和更新控件屬性

Control???events

處理特定事件,如 Button 控件的 Click 事件

Page_PreRender

對頁的內容進行最后更改

Page_Unload

???? 執行最后的清理工作,例如關閉打開的文件和數據庫連接等

以下代碼可以用于驗證這些事件的觸發順序:

?代碼清單1

C#代碼?? ? ? ? ? ? ? ? ? ? ? ? ?

  • 1. protected void Page_Load(object sender, EventArgs e) 2. 3. { 4. 5. lbText.Text += "Page_Load <hr> "; 6. 7. } 8. 9. protected void Page_PreInit(object sender, EventArgs e) 10. 11. { 12. 13. lbText.Text += "Page_PreInit <hr>"; 14. 15. } 16. 17. protected void Page_Init(object sender, EventArgs e) 18. 19. { 20. 21. lbText.Text += "Page_Init <hr>"; 22. 23. } 24. 25. protected void Page_PreLoad(object sender, EventArgs e) 26. 27. { 28. 29. lbText.Text += "Page_PreLoad <hr>"; 30. 31. } 32. 33. protected void Page_PreRender(object sender, EventArgs e) 34. 35. { 36. 37. lbText.Text += "Page_PreRender <hr>"; 38. 39. }

    ?

  • ?

    lbText是在頁面頂端放置的一個Lable控件。運行后在瀏覽器中呈現如圖1所示的效果。

    需要特別說明的是Page_Unload事件,它容易被誤解為關閉頁面時所觸發的事件。但是執行下面的代碼后就會發現其實不然。

    ?

    代碼清單 2

    C#代碼??

    1. protected void Page_Unload(object sender, EventArgs e) 2. 3. { 4. System.Web.HttpContext.Current.Response.Write("<Script>alert('Page_Unload');</Script>"); 5. }

    ?

    保存并運行頁面后就會發現,在頁面加載后就看到了圖2的效果。

    ?

    ??? 頁面在請求完成后,就立刻觸發了該事件。關閉頁面是一個客戶端的事件,請不要與之混淆。此外,如果在Page_Unload中調用Response.Write方法,還會得到一個“響應在此上下文中不可用。”的錯誤警告。

    了解了頁面事件的觸發順序,在實際網站的開發中,我們就可以根據需要在不同的事件發生時給出處理操作。

    ?

    轉載于:https://www.cnblogs.com/zhuaixia/archive/2013/01/05/2845700.html

    與50位技術專家面對面20年技術見證,附贈技術全景圖

    總結

    以上是生活随笔為你收集整理的也谈ASP.NET页面事件的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。