ASP.NET AJAX入门系列(11):在多个UpdatePanle中使用Timer控件

简介:


本文将使用Timer控件更新两个UpdatePanel控件,Timer控件将放在UpdatePanel控件的外面,并将它配置为UpdatePanel的触发器,翻译自官方文档。

 
主要内容
     在多个UpdatePanel中使用Timer控件
 
1 .添加一个新页面并切换到设计视图。
2 .如果页面没有包含ScriptManager控件,在工具箱中的AJAX Extensions标签下双击ScriptManager控件添加到页面中。
3 .双击Timer控件添加到Web页面中。Timer控件可以作为UpdatePanel的触发器不管它是否在UpdatePanel中。
4 .双击UpdatePanel控件添加一个Panel到页面中,并设置它的UpdateMode属性值为Conditional
5 .再次双击UpdatePanel控件添加第二个Panel到页面中,并设置它的UpdateMode属性值为Conditional
6 .在UpdatePanel1中单击,并在工具箱中Standard标签下双击Label控件添加到UpdatePanel1中。
7 .设置Label控件的Text属性值为“UpdatePanel1 not refreshed yet”。
8 .添加Label控件到UpdatePanel2
9 .设置第二个Label控件的Text属性值为“UpdatePanel2 not refreshed yet”。

10
.设置Interval属性为10000Interval属性的单位是毫秒,所以我们设置为10000,相当于10秒钟刷新一次。
11 .双击Timer控件添加Tick事件处理,在事件处理中设置Label1Label2Text属性值,代码如下。
None.gif public  partial  class  _Default : System.Web.UI.Page
None.gif
ExpandedBlockStart.gif
{
InBlock.gif
InBlock.gif    
protected void Page_Load(object sender, EventArgs e)
InBlock.gif
ExpandedSubBlockStart.gif    
{
InBlock.gif
ExpandedSubBlockEnd.gif    }

InBlock.gif
InBlock.gif    
protected void Timer1_Tick(object sender, EventArgs e)
InBlock.gif
ExpandedSubBlockStart.gif    
{
InBlock.gif
InBlock.gif        Label1.Text 
= "UpdatePanel1 refreshed at: " +
InBlock.gif
InBlock.gif          DateTime.Now.ToLongTimeString();
InBlock.gif
InBlock.gif        Label2.Text 
= "UpdatePanel2 refreshed at: " +
InBlock.gif
InBlock.gif          DateTime.Now.ToLongTimeString();
InBlock.gif
ExpandedSubBlockEnd.gif    }

InBlock.gif
ExpandedBlockEnd.gif}
12 .在UpdatePanel1UpdatePanel2中添加Timer控件作为AsyncPostBackTrigger,代码如下:
None.gif < Triggers >
None.gif
None.gif  
< asp:AsyncPostBackTrigger  ControlID ="Timer1"  EventName ="Tick"   />
None.gif
None.gif
</ Triggers >
全部完成后 ASPX页面代码如下:
ExpandedBlockStart.gif <% @ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"  %>
None.gif
None.gif 
None.gif
None.gif
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" >
None.gif
None.gif
< html  xmlns ="http://www.w3.org/1999/xhtml" >
None.gif
None.gif
< head  id ="Head1"  runat ="server" >
None.gif
None.gif    
< title > Untitled Page </ title >
None.gif
None.gif
</ head >
None.gif
None.gif
< body >
None.gif
None.gif    
< form  id ="form1"  runat ="server" >
None.gif
None.gif        
< asp:ScriptManager  ID ="ScriptManager1"  runat ="server"   />
None.gif
None.gif        
< div >
None.gif
None.gif            
< asp:Timer  ID ="Timer1"  OnTick ="Timer1_Tick"  runat ="server"  Interval ="10000" >
None.gif
None.gif            
</ asp:Timer >
None.gif
None.gif        
</ div >
None.gif
None.gif        
< asp:UpdatePanel  ID ="UpdatePanel1"  UpdateMode ="Conditional"  runat ="server" >
None.gif
None.gif            
< Triggers >
None.gif
None.gif                
< asp:AsyncPostBackTrigger  ControlID ="Timer1"  EventName ="Tick"   />
None.gif
None.gif            
</ Triggers >
None.gif
None.gif            
< ContentTemplate >
None.gif
None.gif                
< asp:Label  ID ="Label1"  runat ="server"  Text ="UpdatePanel1 not refreshed yet." ></ asp:Label >
None.gif
None.gif            
</ ContentTemplate >
None.gif
None.gif        
</ asp:UpdatePanel >
None.gif
None.gif        
< asp:UpdatePanel  ID ="UpdatePanel2"  UpdateMode ="Conditional"  runat ="server" >
None.gif
None.gif            
< Triggers >
None.gif
None.gif                
< asp:AsyncPostBackTrigger  ControlID ="Timer1"  EventName ="Tick"   />
None.gif
None.gif            
</ Triggers >
None.gif
None.gif            
< ContentTemplate >
None.gif
None.gif                
< asp:Label  ID ="Label2"  runat ="server"  Text ="UpdatePanel2 not refreshed yet." ></ asp:Label >
None.gif
None.gif            
</ ContentTemplate >
None.gif
None.gif        
</ asp:UpdatePanel >
None.gif
None.gif 
None.gif
None.gif    
</ form >
None.gif
None.gif
</ body >
None.gif
None.gif
</ html >

13 .保存并按Ctrl + F5运行。
14 .等待10秒钟后两个UpdatePanel都刷新后,Label中的文本都变成了当前时间。
 














本文转自lihuijun51CTO博客,原文链接: http://blog.51cto.com/terrylee/67721  ,如需转载请自行联系原作者
相关文章
|
2月前
|
设计模式 前端开发 JavaScript
Ajax技术【Ajax 实战】(二)-全面详解(学习总结---从入门到深化)
Ajax技术【Ajax 实战】(二)-全面详解(学习总结---从入门到深化)
22 0
|
3月前
|
开发框架 前端开发 .NET
七天.NET 8操作SQLite入门到实战 - (1)第七天BootstrapBlazor UI组件库引入
七天.NET 8操作SQLite入门到实战 - (1)第七天BootstrapBlazor UI组件库引入
|
3月前
|
XML JSON 前端开发
Ajax技术【Ajax技术详解、 Ajax 的使用、Ajax请求、 JSON详解、JACKSON 的使用 】(一)-全面详解(学习总结---从入门到深化)
Ajax技术【Ajax技术详解、 Ajax 的使用、Ajax请求、 JSON详解、JACKSON 的使用 】(一)-全面详解(学习总结---从入门到深化)
58 1
|
24天前
|
开发框架 .NET 物联网
.NET从入门到精通,零基础也能搞定的基础知识教程
.NET从入门到精通,零基础也能搞定的基础知识教程
19 0
|
1月前
|
XML 开发框架 .NET
C# .NET面试系列八:ADO.NET、XML、HTTP、AJAX、WebService
## 第二部分:ADO.NET、XML、HTTP、AJAX、WebService #### 1. .NET 和 C# 有什么区别? .NET(通用语言运行时): ```c# 定义:.NET 是一个软件开发框架,提供了一个通用的运行时环境,用于在不同的编程语言中执行代码。 作用:它为多语言支持提供了一个统一的平台,允许不同的语言共享类库和其他资源。.NET 包括 Common Language Runtime (CLR)、基础类库(BCL)和其他工具。 ``` C#(C Sharp): ```c# 定义: C# 是一种由微软设计的面向对象的编程语言,专门为.NET 平台开发而创建。 作
173 2
|
2月前
|
开发框架 .NET 程序员
C#/.NET该如何自学入门?
C#/.NET该如何自学入门?
|
2月前
|
SQL 开发框架 前端开发
ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法
ASP.NET WEB项目中GridView与Repeater数据绑定控件的用法
32 0
|
3月前
|
SQL 开发框架 JavaScript
分享33个ASP.NET电子商务源码和40个ASP.NET控件组件源码,总有一款适合您
分享33个ASP.NET电子商务源码和40个ASP.NET控件组件源码,总有一款适合您
29 0
|
3月前
|
设计模式 缓存 前端开发
Ajax技术【Ajax 实战】(二)-全面详解(学习总结---从入门到深化)(下)
Ajax技术【Ajax 实战】(二)-全面详解(学习总结---从入门到深化)
15 1
|
3月前
|
前端开发 JavaScript fastjson
Ajax技术【Ajax 实战】(二)-全面详解(学习总结---从入门到深化)(上)
Ajax技术【Ajax 实战】(二)-全面详解(学习总结---从入门到深化)
24 1