asp.net ajax1.0基础回顾(四):其它内置服务器端控件

在asp.net ajax中内置服务器端控件除ScriptManager控件和UpdatePanel控件最常用之外,还有如下三个:

1.ScriptManagerProxy控件

在ScriptManagerProxy控件中可添加ServicesReference和ScriptReference,在网上找了一些相关资料看了一下,并试用过,没有觉得什么特别之处。

2.UpdateProgress控件

UpdateProgress控件可配合UpdatePanel控件使用,在请求稍长时,提高用户体验,使用起来很简单,先指定UpdatePanelIDU,并将等待提示相关的文字或图片放到其中,即可,具体如下代码:

  
  
  
  
  1. <asp:ScriptManager ID="ScriptManagerDemo" runat="server"></asp:ScriptManager> 
  2. <asp:UpdatePanel ID="UpdatePanelDemo" runat="server"></asp:UpdatePanel> 
  3. <asp:UpdateProgress ID="UpdateProgressDemo" runat="server" 
  4.             AssociatedUpdatePanelID="UpdatePanelDemo" DisplayAfter="100"> 
  5.       <ProgressTemplate> 
  6.          数据加载中... 
  7.       </ProgressTemplate> 
  8. </asp:UpdateProgress> 

如果请求时间过短的情况下,可能会一闪而过,这是因为显示延迟时间设置过长,只需要修改DisplayAfter的值(默认为500毫秒)即可,见上图指出。

3.Timer控件

顾名思义,主要用作控制时间,只需要设置一下Interval的值,并绑定OnTick事件,具体如下:

前端代码:

  
  
  
  
  1. <asp:ScriptManager ID="ScriptManagerDemo" runat="server"></asp:ScriptManager> 
  2. <asp:Label ID="lblMessage" runat="server"></asp:Label> 
  3. <asp:Timer ID="TimerDemo" runat="server" Interval="2000"  
  4. ontick="TimerDemo_Tick"></asp:Timer> 

服务器端代码:

  
  
  
  
  1. protected void TimerDemo_Tick(object sender, EventArgs e) 
  2.     this.lblMessage.Text = String.Format("当前时间:{0}",  
  3. DateTime.Now.ToLongTimeString()); 

以上代码完成的操作是整页面刷新,可以通过结合UpdatePanel控件,将OnTick事件注册到UpdatePanel控件上,即可完成异步刷新。

你可能感兴趣的:(Ajax,职场,asp.net,休闲)