您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關ASP.NET AJAX Extensions中UpdatePanel的原理及屬性是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
一.ASP.NET AJAX Extensions中UpdatePanel控件概述
UpdatePanel可以用來創建豐富的局部更新Web應用程序,它是ASP.NET AJAX Extensions中很重要的一個控件,其強大之處在于不用編寫任何客戶端腳本,只要在一個頁面上添加幾個UpdatePanel控件和一個ScriptManager控件就可以自動實現局部更新。簡單的UpdatePanel定義如下:
<asp:UpdatePanelIDasp:UpdatePanelID="UpdatePanel1"runat="server"> <ContentTemplate> <!----> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger/> <asp:PostBackTrigger/> </Triggers> </asp:UpdatePanel>
二.UpdatePanel工作原理
UpdatePanel的工作依賴于ScriptManager服務端控件和客戶端PageRequestManager類(Sys.WebForms.PageRequestManager,在后面的客戶端類中會專門說到),當ScriptManager中允許頁面局部更新時,它會以異步的方式回傳給服務器,與傳統的整頁回傳方式不同的是只有包含在UpdatePanel中的頁面部分會被更新,在從服務端返回HTML之后,PageRequestManager會通過操作DOM對象來替換需要更新的代碼片段。
看一下官方網站提供的UpdatePanel工作原理圖:
三.ContentTemplate屬性
Contente Template標簽用來定義UpdatePanel的內容,在它里面可以放任何ASP.NET元素。如果你想要使用編程的手法來控制UpdatePanel中的內容,就需要使用ContenteTemplateContainer,下面會說到
四.ContentTemplateContainer屬性
如果要使用編程的手法去設置UpdatePanel中的內容,需要創建一個UpdatePanel,并且添加控件到ContentTemplateContainer,而不能直接添加控件到ContentTemplate,如果想直接設置ContentTemplate,則需要編寫一個自定義的Template,并去實現位于System.Web.UI命名空間下的接口ITemplate。
五.Triggers屬性
在ASP.NET AJAX中有兩種Triggers:分別為AsyncPostBackTrigger和PostBackTrigger,AsyncPostBackTrigge用來指定某個服務器端控件以及其將觸發的服務器端事件作為該UpdatePanel的異步更新觸發器,它需要設置的屬性有控件ID和服務端控件的事件;PostBackTrigger用來指定在UpdatePanel中的某個服務端控件,它所引發的回送不使用異步回送,而仍然是傳統的整頁回送。這一點跟Atlas有很大的區別,大家需要注意。看一個小例子,雖然兩個Button都放在了UpdatePanel中,但是由于在PostBackTrigger中指定了Button2,所以它使用的仍然是整頁回送。
關于ASP.NET AJAX Extensions中UpdatePanel的原理及屬性是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。