UpdatePanel控件也是Ajax里用得最多的控件之中的一个,UpdatePanel控件是用来局部更新网页上的内容,网页上要局部更新的内容必须放在UpdatePanel控件里,他必须和上一次说的ScriptManager控件一起使用。如今来看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中控件引发的异步回送或者整页回送,或是server端调用Update()方法才会引发更新该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中控件引发的异步回送或者整页回送,或是server端调用Update()方法才会引发更新该UpdatePanel。
Contente Template:用来定义UpdatePanel的内容
Triggers:分别为AsyncPostBackTrigger和PostBackTrigger
AsyncPostBackTrigge用来指定某个server端控件以及其将触发的server端事件作为该UpdatePanel的异步更新触发器,它须要设置的属性有控件ID和服务端控件的事件;PostBackTrigger用来指定在UpdatePanel中的某个服务端控件,它所引发的回送不使用异步回送,而仍然是传统的整页回送
如今我们来做一个简单的实例:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!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" />&nbsp;&nbsp;
                    <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" >
              &nbsp;</div>
        
        
    </form>
</body>
</html>
表示UpdatePanel终于呈现的HTML元素。Block(默认)表示<div>,Inline表示<span>

里面包括了一个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就是一般的赋值了。看看是不是非常easy呀!呵呵! 

UpdatePanel的用法的更多相关文章

  1. [转]UpdatePanel的用法详解

    本文转自:http://www.cnblogs.com/shangxia/articles/2281782.html 今天用做日历显示本月的考勤记录,用到了UpdatePanel控件,才发现对这个控件 ...

  2. updatepanel的用法之triggers

    triggers有的两种触发器asyncpostbacktrigger和postbacktrigger.asyncpostbacktrigger(异步回调触发器):局部刷新,只刷新updatepane ...

  3. UpdatePanel的用法详解

    摘自:http://www.cnblogs.com/shangxia/articles/2281782.html 一.UpdatePanel的结构 <asp:ScriptManager ID=& ...

  4. UpdatePanel的简单用法(转)

    微软AJAX虽然是过时的玩意,但是得维护公司之前的老项目,转载看看. 局部更新是ajax技术的最基本,也是最重要的用法,今天大概把asp.net ajax中的局部更新控件 updatepanel的用法 ...

  5. ScriptManager和UpdatePanel用法 (ajax)

    ScriptManager和UpdatePanel控件联合使用可以实现页面异步局部更新的效果.其中的UpdatePanel就是设置页面中异 步局部更新区域,它必须依赖于ScriptManager存在, ...

  6. updatepanel用法之triggers(局部刷新,全部刷新)使用示例

    asyncpostbacktrigger(异步回调触发器):局部刷新,只刷新updatepanel内部的内容postbacktrigger(普通回调触发器):全部刷新 <asp:ScriptMa ...

  7. UpdatePanel局部刷新用法

    AjaxTest.aspx代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind=&qu ...

  8. 学习笔记:UpdatePanel控件

    Asp.net UpdatePanel 允许用户构建一个丰富的,以客户端为中心的应用程序,引用UpdatePanel控件,能够实现页面的部分刷新,一个包含scriptManage和 UpdatePan ...

  9. 【Ext.Net学习笔记】03:Ext.Net DirectEvents用法详解、DirectMethods用法详解

    Ext.Net通过DirectEvents进行服务器端异步的事件处理.[Ext.Net学习笔记]02:Ext.Net用法概览.Ext.Net MessageBus用法.Ext.Net布局 中已经简单的 ...

随机推荐

  1. HDU 1532 Drainage Ditches 排水渠(最大流,入门)

    题意: 给出一个有向图,以及边上的容量上限,求最大流.(有重边,要将容量上限叠加) 思路: 用最简单的EK+BFS解决.每次搜到一条到达终点的路径,就立刻退出,更新ans,然后再回头修改图中的当前fl ...

  2. 解决iframe缓存

    网上能搜到很多此类的资料,但都是互相转载,不太起作用.这几天写个用到,用了不少的iframe效果.结果发现iframe有缓存的问题.网上提供了思路,即对iframe的href后添加随即get值,来逃避 ...

  3. hdu 2639 Bone Collector II

    Bone Collector II Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  4. 用纯css写出三角形

    1.新建一个元素,随便什么元素,不过我习惯性的会用块元素来做.如果行内元素就display:block它.<div class="triangle"></div& ...

  5. 临时禁用Resharper

    Visual Studio 菜单 –> 工具 –> 选项 –> ReSharper –> Suspend按钮

  6. 关于Memcache mutex设计模式的.net实现

    之前在网上看过memcache-mutex的场景分析和实现代码,这里将.net方式加以实现,当然这里主要是依据原文的伪代码照猫画虎,以此做为总结及记录.如果您对相应实现感兴趣可以尝试使用本文提供的代码 ...

  7. chrome启用本地文件

    chrome禁止本地浏览时加载本地其他文件,可以采用添加启动参数的方式来支持 添加参数为 --allow-file-access-from-files  或者 --disable-web-securi ...

  8. [假期总结]Self

    8月底返校,这一周也没有勤学苦练.假期3周的时间学习了nodejs. 1.nodejs的学习 学习了一本书上的例程,搭建了个博客.这种程度等于是能够动手开发的阶段,前路还很漫长. 2.个人网站的建设 ...

  9. Java修饰符关键词大全

    所以我以此主题写了这篇文章.这也是一个可用于测试你的计算机科学知识的面试问题. Java修饰符是你添加到变量.类和方法以改变其含义的关键词.它们可分为两组: 访问控制修饰符 非访问修饰符 让我们先来看 ...

  10. Socket的连接问题

    case 10004: error = "Interrupted system call 中断的系统呼叫"; break; case 10009: error = "Ba ...