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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Ajax Extensions核心控件介绍

發(fā)布時間:2023/12/10 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ajax Extensions核心控件介绍 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

摘自:http://www.cnblogs.com/remember515/archive/2007/06/28/799030.html

Ajax的核心組件包括ScriptManager、ScriptManagerProxy、UpdatePanel、Timer、UpdateProgress,其相關(guān)屬性如下:
updatePanel控件?

UpdatePanel主要屬性

UpdateMode

內(nèi)容模板的更新模式,有AlwaysConditional兩種模式,默認情況下為Always

區(qū)別:Always即一旦有任何事件可觸發(fā)updatePanel更新即開始更新內(nèi)容模板,而Conditional則是有條件的更新,一般為設置了Trigger屬性后由Trigger引發(fā)的更新

ChildrenAsTriggers

內(nèi)容模板內(nèi)的子控件的回發(fā)是否更新本模板,值為TrueFalse

RenderMode

局部更新控件的呈現(xiàn)形式,當模式為Block時局部更新控件在客戶端以div的形式展現(xiàn),當模式為Inline時以span形式展現(xiàn)

UpdatePanel主要子元素

ContentTemplate

局部更新控件的內(nèi)容模權(quán),可以其內(nèi)添加任何控件

Triggers

局部內(nèi)容更新觸發(fā)器,內(nèi)似于數(shù)據(jù)庫中的Trigger

觸發(fā)器分為異步回發(fā)(AsyncPostBackTrigger)和類似于普通頁面的回發(fā)機制(PostBackTrigger),前者實現(xiàn)局部更新,后者會引起整個頁面的全部更新

Timers控件

屬性Interval:控制需要等待的時間,默認單位為毫秒,即1000即為1

事件TickTimer唯一的獨立事件,該事件用于設計要完成的任務

UpdateProgress控件

updateProgress實際上是一個div,通過代碼控制div的顯示或隱藏來實現(xiàn)更新提示,使用UpdateProgress可以設計良好的等待界面,達到與用戶友好交互的目的。

主要屬性和模板:

1AssociateUpdatePanelID:關(guān)聯(lián)的UpdatePanel,此時UpdateProgress需放置于UpdatePanel外;

?????? 2DisplayAfter:表示多長時間后顯示進度提示,默認值為500毫秒

?????? 3ProgressTemplate:用于設計等待時的界面,可在其內(nèi)加入圖形、文字等

腳本控制器ScriptManager

5個主要屬性及其4個子元素:

EnablePartialRendering

用于標識此頁內(nèi)是否允許局部刷新,默認值為True

AllowCustomErrorsRedirect

表示當Ajax調(diào)用發(fā)生錯誤后,是否導航到Web.Config中定義的錯誤配置,如果值為false,則使用AsyncPostBackErrorMessageOnAsyncPostBackError兩個屬性實現(xiàn)錯誤提示

AsyncPostBackErrorMessage

異步調(diào)用發(fā)生錯誤時的提示信息

OnAsyncPostBackError

異步調(diào)用發(fā)生錯誤時的事件

AsyncPostBackTimeOut

表示異步調(diào)用的有效時間,默認值為90

AuthenticationService

用來表示提供驗證服務的路徑

ProfileService

表示提供個性化服務的路徑

Scripts

對腳本的調(diào)用,其中可以嵌套多個ScriptReference模板以實現(xiàn)對多個腳本文件的調(diào)用

Service

對服務的調(diào)用,通常指Web Service服務,可以嵌套多個ServiceReference模板以實現(xiàn)多個服務的引用

?至于ScriptManagerProxy,用法和ScriptManager差不多,值得一提的是一個頁面只能有一個ScriptManager。而ScriptManagerProxy則是當母版頁和內(nèi)容頁需要引用不同的服務或者腳本時,在內(nèi)容頁中用ScriptManagerProxy代理ScriptManager的職能。

實例:
下面給出一個無刷新實例,此例中加入了四個
UpdatePanel

頁面部局如下:


UodatePanel1代碼如下:

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">

??????????? <ContentTemplate>

??????????????? updatePanel1<br />

??????????????? <strong>Timer<br /></strong>

??????????????? <asp:Label ID="Label1" runat="server" Text="Label1" ForeColor="Blue"></asp:Label>&nbsp;

??????????????? <br />

??????????????? <span style="font-size: 9pt">(拖放一個Timer到此,設其Interval為1000,即1秒刷新一次)</span>

??????????? </ContentTemplate>

??????????? <Triggers>

??????????????? <asp:AsyncPostBackTrigger ControlID="Timer1" />

??????????? </Triggers>

??????? </asp:UpdatePanel>

??????????????? <asp:Timer ID="Timer1" runat="server" Interval="1000">

??????????????? </asp:Timer>

UodatePanel2代碼如下:

<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">

??????????? <ContentTemplate>

??????????????? updatePanel2<br />

??????????????? <strong>updateProgress</strong><br />

??????????????? <asp:Label ID="Label2" runat="server" Text="Label2" ForeColor="Blue"></asp:Label>

??????????????? <br />

??????????????? <asp:Button ID="btnProgress" runat="server" Text="刷新updatePanel2,出現(xiàn)updateProgress內(nèi)容" OnClick="btnProgress_Click" />

??????????? </ContentTemplate>

??????????? <Triggers>?

??????????????? <asp:AsyncPostBackTrigger ControlID="btnProgress" />

??????????? </Triggers>

??????? </asp:UpdatePanel>

<asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel2">

??????????? <ProgressTemplate>

??????????????? <span style="font-size: 10pt; color: #ff6633"><strong>

???????????????? updatePanel2正在更新中...... </strong>

??????????????? </span>

??????????? </ProgressTemplate>

??????? </asp:UpdateProgress>

UodatePanel3代碼如下:

<asp:UpdatePanel ID="UpdatePanel3" runat="server" UpdateMode="Conditional">

??????????? <ContentTemplate>

??????????????? updatePanel3<br />

??????????????? &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="font-size: 9pt"><strong>

??????????????? 局部刷新(1)</strong></span><br />

??????????????? <asp:Label ID="Label3" runat="server" Text="Label3" ForeColor="Blue"></asp:Label><br />

??????????????? <asp:Button ID="Button1" runat="server" Text="刷新updatePanel3" />

??????????? </ContentTemplate>

??????????? <Triggers>

??????????????? <asp:AsyncPostBackTrigger ControlID="Button2" />

??????????? </Triggers>

??????? </asp:UpdatePanel>

UodatePanel4代碼如下:

<asp:UpdatePanel ID="UpdatePanel4" runat="server" UpdateMode="Conditional">

??????????? <ContentTemplate>

??????????????? updatePanel4<br />

??????????????? <span style="font-size: 9pt">

<strong>局部刷新(2)<br /></strong></span>

??????????????? <asp:Label ID="Label4" runat="server" Text="Label4" ForeColor="Blue"></asp:Label>

??????????????? <br />

??????? <asp:Button ID="Button2" runat="server" Text="刷新updatePanel3和updatePanel4" />

??????????? </ContentTemplate>

??????????? <Triggers>

??????????????? <asp:AsyncPostBackTrigger ControlID="Button2" />

??????????? </Triggers>

??????? </asp:UpdatePanel>

Page_Load事件里面代碼如下:

protected void Page_Load(object sender, EventArgs e)

??? {

??????????? this.Label1.Text = DateTime.Now.ToString();

??????????? this.Label2.Text = DateTime.Now.ToString();

???????? ???this.Label3.Text = DateTime.Now.ToString();

??????????? this.Label4.Text = DateTime.Now.ToString();???????

??? }

UpdatePanel2中btnProgress的Click事件代碼如下:

protected void btnProgress_Click(object sender, EventArgs e)

??? {

??????? //如果刷新速度太快則不會看到updateProgress中的內(nèi)容

??????? //此時可以令程序延遲一段時間再執(zhí)行

??????? System.Threading.Thread.Sleep(5000);//5

??????? Label2.Text = DateTime.Now.ToString();

??? }

?

頁面最終效果圖

?

示例程序下載





轉(zhuǎn)載于:https://www.cnblogs.com/wj-wangjun/archive/2007/11/29/976689.html

總結(jié)

以上是生活随笔為你收集整理的Ajax Extensions核心控件介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。