[ASP.NET AJAX] UpdatePanel 更新行為模式

  • 19095
  • 0
  • 2010-08-03

[ASP.NET AJAX] UpdatePanel 更新行為模式

Introduction

我們知道當網頁上有 UpdatePanel 時,當網頁 postback 時會觸發局部更新;

可是當網頁上有多個 UpdatePanel時,又是如何的狀況呢?這邊我們來觀察一下。

 

首先我們將畫面配置如下

2010-08-01_144832

aspx 程式碼,當我們更新時,看看顯示的時間是否都一起更新了

2010-08-01_144957

這邊經過驗證,證實畫面上顯示兩個 Panel 是會一起更新的。(可自行測試看看)

 

其中的 UpdateMode  屬性用來設定更新模式, Always 是預設值,也可設定為 Conditional;Always 是預設網頁上發生的 postback

都會導致其中的區域執行更新作業,無論是由 UpdatePanel 內部或是外部控制項所觸發的更新行為。

 

觸發局部區域更新:

  • 明確的 Update 方法呼叫
  • 觸發器 (Trigger) 關聯控制項

 

回到範例中,我們將第二個  Panel 的觸發條件設定為 Conditional

2010-08-01_145141 ]

 

驗證看看是否有條件更新

2010-08-01_145506

 

 

 

 

 

 

接下來,我們來設定 Triggers ,一起更新 UpdatePanel2

2010-08-01_150539

 

使用程式來控制 UpdatePanel2 更新,請記得先將 Triggers 註解掉

2010-08-01_150838

 

以上就是我們觀察當網頁上有多個 Panel 時,我們可以用甚麼方法來控制更新的時機。

三小俠  小弟獻醜,歡迎指教