asp.net UpdatePanel实现异步局部刷新
如有雷同,不胜荣欣,若转载,请注明
鉴于最近项目需要,研究了一下UpdatePanel控件的使用方法,现总结如下,可能有很多地方不足,还望大家斧正哦,此文的目的也是为了帮助UpdatePanel的初学者,也是为了给自己的学习之路留个脚印,以便自己查缺补漏,废话到此,下面直接开始
UpdatePanel局部刷新的使用
ScriptManager和UpdatePanel控件联合使用可以实现页面异步局部更新的效果。
其中的UpdatePanel就是设置页面中异
步局部更新区域,它必须依赖于ScriptManager存在,因为ScriptManger控件提供了客户端脚本生成与管理UpdatePanel的功能。
ScriptManager控件重要的属性:
ScriptManager控件的EnablePartialRendering属性:true-表示实现页面的异步局部更新;false-表示实现全页面的刷新。
此属性默认值为true
UpdatePanel控件重要的属性:
UpdatePanel控件的RenderMode属性:InLine,UpdatePanel控件被解析成HTML的<span>标记;Block,UpdatePanel控件被解析成HTML控件的<div>。
UpdatePanel控件的UpdateMode属性:Always,UpdatePanel页面上任何一处发生的回发操作都会产生页局部更新;Conditional,只在特定的情况下才产生页面的回发,如执行UpdatePanel控件的update()方法或在指定的触发器的操作下,UpdatePanel控件的UpdateMode默认为"Always"。
UpdatePanel控件的ChildAsTrigger属性:指示UpdatePanel内部控件引起的回发是否产生当前UpdatePanel控件的局部更新。如果UpdateMode设为Always的话,那ChildAsTrigger属性必须设为True,否则运行出错。
一、UpdatePanel内部的控件引起的回发,来更新当前UpdatePanel内部的控件内容:
1.向页面中加入ScriptManager、UpdatePanel控件和一个Label控件,ID="Label1"。
2.在UpdatePanel中加入一个Button、一个Label,ID="Label2"。
3.双击Button在事件处理程序中写入下列代码:Label2.Text = DateTime.Now.ToString();
4.在Page_Load事件中写入下列代码:Label1.Text = DateTime.Now.ToString();
5.运行页面,发现每次点击按钮都会产生异步局步刷新,只有Label2的内容发生更改,页面上的Label1时间没有发生更改。