版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/zhanghongjie0302/article/details/35609691

         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中控件引发的异步回送或者整页回送,或是服务器端调用Update()方法才会引发更新该UpdatePanel。

 

          ChildrenAsTriggers:当UpdateMode属性为Conditional时,UpdatePanel中的子控件的异步回送是否会引发UpdatePanle的更新。

           RenderMode:表示UpdatePanel终于呈现的HTML元素。Block(默认)表示<div>。Inline表示<span>。表示UpdatePanel终于呈现的HTML元素。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中的某个服务端控件,它所引发的回送不使用异步回送,而仍然是传统的整页回送。

如今我们来做一个简单的实例:

<span style="font-size:18px;">< %@ 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" />  
<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>
</span>

里面包括了一个Triggers,里面第一个属性AsyncPostBackTrigger指定Button1实现异步更新,而PostBackTrigger
指定Button2实现整页更新。

.CS代码为:

<span style="font-size:18px;"> 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";
}
</span>

        UpdatePanel是一个非常不错的控件,有了这个控件你能够不会写javascript代码,能够不动Ajax的机制,你就能够说你会用Ajax了!

Ajax系列之三:UpdatePanel的更多相关文章

  1. 深入理解ajax系列第一篇——XHR对象

    × 目录 [1]创建对象 [2]发送请求 [3]接收响应[4]异步处理[5]实例演示 前面的话 ajax是asynchronous javascript and XML的简写,中文翻译是异步的java ...

  2. DataSnap 2009 系列之三 (生命周期篇)

    DataSnap 2009 系列之三 (生命周期篇) DataSnap 2009的服务器对象的生命周期依赖于DSServerClass组件的设置 当DSServer启动时从DSServerClass组 ...

  3. Sql Server来龙去脉系列之三 查询过程跟踪

    我们在读写数据库文件时,当文件被读.写或者出现错误时,这些过程活动都会触发一些运行时事件.从一个用户角度来看,有些时候会关注这些事件,特别是我们调试.审核.服务维护.例如,当数据库错误出现.列数据被更 ...

  4. ASP.NET之Ajax系列(三)

    我们通过前两篇文章的学习,已经大致掌握了Ajax的实现方法,同时也可以对比出两种方式的优劣.但是我们还是没有搞清楚真正的ajax的实现原理,以及最原始的,未经过封装的ajax是什么样的,今天我们一起来 ...

  5. 完毕port(CompletionPort)具体解释 - 手把手教你玩转网络编程系列之三

       手把手叫你玩转网络编程系列之三    完毕port(Completion Port)具体解释                                                    ...

  6. Red Gate系列之三 SQL Server 开发利器 SQL Prompt 5.3.4.1 Edition T-SQL智能感知分析器 完全破解+使用教程

    原文:Red Gate系列之三 SQL Server 开发利器 SQL Prompt 5.3.4.1 Edition T-SQL智能感知分析器 完全破解+使用教程 Red Gate系列之三 SQL S ...

  7. .NET 4 并行(多核)编程系列之三 从Task的取消

    原文:.NET 4 并行(多核)编程系列之三 从Task的取消 .NET 4 并行(多核)编程系列之三 从Task的取消 前言:因为Task是.NET 4并行编程最为核心的一个类,也我们在是在并行编程 ...

  8. AJAX 怎样在一个UpDatePanel中刷新另一个updatePanel

    原文:AJAX 怎样在一个UpDatePanel中刷新另一个updatePanel 在页面上(.aspx)<asp:UpdatePanel ID="MyID1" runat= ...

  9. ajax系列之用jQuery的ajax方法向服务器发出get和post请求

    打算写个ajax系列的博文,主要是写给自己看,学习下ajax的相关知识和用法,以更好的在工作中使用ajax. 假设有个网站A,它有一个简单的输入用户名的页面,界面上有两个输入框,第一个输入框包含在一个 ...

随机推荐

  1. mssql 死锁方面的一些资料。

    -- 1.查询死锁的进程,表名 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) as tableNa ...

  2. Activemq API使用(不整合spring)

    首先需要引入activemq的jar包,这里用的是5.14.4版本的 <!-- https://mvnrepository.com/artifact/org.apache.activemq/ac ...

  3. java判断jsonObject和jsonArray是否为空

    resJsonObj = {"res":"0","msg":"","data":{"Nam ...

  4. GreenPlum 大数据平台--外部表(三)

    一,外部表介绍 Greenplum 在数据加载上有一个明显的优势,就是支持数据的并发加载,gpfdisk是并发加载的工具,数据库中对应的就是外部表 所谓外部表,就是在数据库中只有表定义.没有数据,数据 ...

  5. 使用JavaFX打开fxml,找不到打开的图形界面

    解决方案: 将 HKEY_CURRENT_USER\Software\JavaSoft\Prefs\com\oracle\javafx\scenebuilder\app\preferences\/S/ ...

  6. 常用css搜集

    div居中显示 position: fixed; top: 130px; left:0px;right:0px;margin-left:auto;margin-right:auto;

  7. Myeclipse编辑JSP文件时,可以点击重口顶部的箭头来切换全屏状态

  8. 一键压测工具改造(locust)

    本文内容来自“天外归云”大神,原文链接http://www.cnblogs.com/LanTianYou/p/5987741.html,目前只对启动脚本做了一些改造,应该说是,不适用powershel ...

  9. C#自定义控件 在 Toolbox显示不了的问题

    1) Close your solution2) Tools->Options->"Windows Form Designer" - find AutoToolboxP ...

  10. js Base64与字符串互转

    1.base64加密 在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML> <html> <head> <meta charset ...