Ajax(5)UpdatePanel的使用方法
UpdatePanel重要的屬性如下:
| 屬性 | 說明 |
| ChildrenAsTriggers | 當UpdateMode屬性為Conditional時,UpdatePanel中的子控件的異步回送是否會引發UpdatePanle的更新。 |
| RenderMode | 表示UpdatePanel最終呈現的HTML元素。Block(默認)表示<div>,Inline表示<span> |
| UpdateMode | 表示UpdatePanel的更新模式,有兩個選項:Always和Conditional。Always是不管有沒有Trigger,其他控件都將更新該UpdatePanel,Conditional表示只有當前UpdatePanel的Trigger,或ChildrenAsTriggers屬性為true時當前UpdatePanel中控件引發的異步回送或者整頁回送,或是服務器端調用Update()方法才會引發更新該UpdatePanel。 |
ChildrenAsTriggers:當UpdateMode屬性為Conditional時,UpdatePanel中的子控件的異步回送是否會引發UpdatePanle的更新。
RenderMode:表示UpdatePanel最終呈現的HTML元素。Block(默認)表示<div>,Inline表示<span>
表示UpdatePanel最終呈現的HTML元素。Block(默認)表示<div>,Inline表示<span>
UpdateMode:表示UpdatePanel的更新模式,有兩個選項:Always和Conditional。Always是不管有沒有Trigger,其他控件都將更新該UpdatePanel,Conditional表示只有當前UpdatePanel的Trigger,或ChildrenAsTriggers屬性為true時當前UpdatePanel中控件引發的異步回送或者整頁回送,或是服務器端調用Update()方法才會引發更新該UpdatePanel。
Contente Template:用來定義UpdatePanel的內容
Triggers:分別為AsyncPostBackTrigger和PostBackTrigger
AsyncPostBackTrigge用來指定某個服務器端控件以及其將觸發的服務器端事件作為該UpdatePanel的異步更新觸發器,它需要設置的屬性有控件ID和服務端控件的事件;PostBackTrigger用來指定在UpdatePanel中的某個服務端控件,它所引發的回送不使用異步回送,而仍然是傳統的整頁回送
現在我們來做一個簡單的實例:
<!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.1//EN"?"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html?xmlns="http://www.w3.org/1999/xhtml">
<head?runat="server">
????<title>Untitled?Page</title>
????<style?type="text/css">
?????????body?{?background-attachment:fixed;
?????????????
??????????????
????????????????background-image:url(Blue?hills.jpg);
????????????????}
????????????????
?????????.style1
?????????{
????????????????background-position:top?center;
?????????}
?????????
?????????
????</style>
</head>
<body??onload="oSpan.className='style1'"?>
????<form?id="form1"?runat="server">
????<span?style="font-size:14;?width:250;"?ID="oSpan"
????????onmouseover="this.className='style2'"?onmouseout="this.className='style1'"></span>
????????<div>
????????????<asp:ScriptManager?ID="ScriptManager1"?????runat="server">????
??????????????</asp:ScriptManager>
????????</div>
???????????
????????<asp:UpdatePanel?ID="uid"??runat="server">
????????
????????????<ContentTemplate>
????????????
????????????????<div?>
????????????????????<asp:Button?ID="Button1"?runat="server"?Text="異步回送"?OnClick="Button1_Click1"?/>
????????????????????<asp:Button?ID="Button2"?runat="server"?Text="整頁回送"?OnClick="Button2_Click"?/><br?/>
????????????????????<asp:GridView?ID="GridView1"?runat="server"?AutoGenerateColumns="False"?Width="197px">
????????????????????????<Columns>
????????????????????????????<asp:BoundField?DataField="au_lname"?FooterText="aaaa"?HeaderText="au_lname"?/>
????????????????????????</Columns>
????????????????????</asp:GridView>
????????????????????<br?/>
???????????????????<asp:Label?ID="Label1"?runat="server"?Text="當前時間"?Font-Bold="True"?Font-Size="Large"></asp:Label>
??????????????????</div>
????????????</ContentTemplate>
????????????<Triggers>
????????????????<asp:AsyncPostBackTrigger????ControlID="Button1"?/>
????????????????<asp:PostBackTrigger??ControlID="Button2"?/>
????????????</Triggers>
??????????????
????????</asp:UpdatePanel>
??????????<div?id="div1"?>
?????????????? </div>
????????
????????
????</form>
</body>
</html>
里面包含了一個Triggers,里面第一個屬性AsyncPostBackTrigger指定Button1實現異步更新,而PostBackTrigger
指定Button2實現整頁更新。
.CS代碼為: ?protected?void?Button1_Click1(object?sender,?EventArgs?e)
????{
??
????????SqlConnection?conn?=?new?SqlConnection("server=.;uid=sa;pwd=;database=pubs");
????????string?sql1?=?"select?top?5?au_lname?from?authors?";
????????SqlDataAdapter?myAdapter?=?new?SqlDataAdapter(sql1,?conn);
????????DataSet?ds?=?new?DataSet();
????????myAdapter.Fill(ds,?"bieminG");
????????//來自web?service的dataset,這里隨便一個ds就可以;
????????this.GridView1.DataSource?=?ds.Tables["bieminG"].DefaultView;?;
????????this.GridView1.DataBind();?//數據綁定
????}
????protected?void?Button2_Click(object?sender,?EventArgs?e)
????{
????????this.Label1.Text?=?"11111";
????}
Button1實現一個數據集的異步更新,BUTTON2就是一般的賦值了。看看是不是很簡單呀!呵呵!
轉載于:https://www.cnblogs.com/nanshouyong326/archive/2008/10/09/1306793.html
總結
以上是生活随笔為你收集整理的Ajax(5)UpdatePanel的使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java.util.IdentityHa
- 下一篇: PostgreSQL查看版本信息