UpdatePanel的使用策略

   1.在頁面上放置一個UpdatePanel之後,該UpdatePanel當中所有的控件,都可以觸發該UpdatePanel的異步Postback功能。

  2.異步Postback處罰時,該UpdatePanel範圍中的內容會自動刷新,後端的事件過程碼也會被執行到,但頁面不會觸發傳統的Postback(達成AJAX效果)。

  3.當頁面上放置有多個UpdatePanel控件時,UpdatePanel設置爲Always的UpdatePanel,會被任何的異步Postback動作所刷新(不管該異步Postback動作是不是由該UpdatePanel自己內部的控件所觸發的)。若UpdateMode設爲Conditional,則只會被位於該UpdatePanel自己內部的控件觸發異步刷新。

  4.若要將UpdatePanel外部的控件(以Button爲例)設置爲可觸發該UpdatePanel的異步刷新,可通過該UpdatePanel的Triggers屬性將Button註冊成AsyncPostBackTrigger。

  5.若要將UpdatePanel內部的控件(以Button爲例)設置爲不可觸發該UpdatePanel的異步刷新(也就是取消UpdatePanel當中某個控件觸發異步Postback的能力),可通過該UpdatePanel的Triggers屬性將Button註冊成PostBackTrigger。

  6.若要通過代碼將某個位於UpdatePanel外的控件設爲可觸發異步Postback,請用ScriptManger的RegisterAsyncPostBackControl()方法。

  7.若要通過代碼將某個位於UpdatePanel內的控件改爲觸發同步Postback(也就是取消其觸發異步Postback的能力),請用ScriptManger的RegisterPostBackControl()方法。

  確保性能的的使用策略

  8.只有一定需要被異步刷新的內容,才放到UpdatePanel當中。

  9.沒有一頂需要異步刷新的內容,可以放置到UpdatePanel外面。

  10.如果可以,儘可能吧UpdatePanel的UpdateMode設爲Conditional。這樣也可以達到減少刷新範圍面積的效果。

  //來源 ASP.NET AJAX應用剖析立即上手 董大偉著 電子工業出版社

例子,關於UpdatePanel 控件--RegisterAsyncPostBackControl方法:

Button1爲UpataePlanel之外的控件!

在Page_Load 里加入以下代碼:
然後給Button1添加“點擊”等事件,然後運行就可以了!RegisterPostBackControl類似,但是控件之間的包含關係與觸發方式不同而已!

protected void Page_Load(object sender, EventArgs e)
{
         ScriptManager1.RegisterAsyncPostBackControl(Button1);
}
發佈了8 篇原創文章 · 獲贊 3 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章