方法一: 1、添加 引用 using System.Threading; 2、在页面加载时 protected void Page_Load(object sender, EventArgs e) {////////////////////以下是进度条 Response.Write("<div style='COLOR: red; POSITION: absolute; ' id='mydiv' >"); Response.Write("_"); Response.Write("</div>"); Response.Write("<script>mydiv.innerText = '';</script>"); Response.Write("<script language=javascript>;"); Response.Write("var dots = 0;var dotmax = 10;function ShowWait()"); Response.Write("{var output; output = '装载页面';dots++;if(dots>=dotmax)dots=1;"); Response.Write("for(var x = 0;x < dots;x++){output += '·';}mydiv.innerText = output;}"); Response.Write("function StartShowWait(){mydiv.style.visibility = 'visible'; "); Response.Write("window.setInterval('ShowWait()',1000);}"); Response.Write("function HideWait(){mydiv.style.visibility = 'hidden';"); Response.Write("window.clearInterval();}"); Response.Write("StartShowWait();</script>"); Response.Flush(); Thread.Sleep(1000); //////////////////////////////////////// } 3、在后台脚本添加 <script language="javascript">
HideWait(); </script>
方法二: 首先建一个HTML面,源码为: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > <html xmlns="http://www.w3.org/1999/xhtml" id="mainWindow" > <head > <title >无标题页 </title > <script language="javascript" type="text/javascript" > function SetPorgressBar(pos) { //设置进度条居中 var screenHeight = window["mainWindow"].offsetHeight; var screenWidth = window["mainWindow"].offsetWidth; ProgressBarSide.style.width = Math.round(screenWidth / 4); ProgressBarSide.style.left = Math.round(screenWidth / 3); ProgressBarSide.style.top = Math.round(screenHeight / 2); ProgressBarSide.style.height = "21px"; ProgressBarSide.style.display = "";
//设置进度条百分比 ProgressBar.style.width = pos + "%"; ProgressText.innerHTML = "正在加载,请稍后....." + pos + "%"; }
//完成后隐藏进度条 function SetCompleted() { ProgressBarSide.style.display = "none"; MyTable.style.display="none"; } </script > </head > <body > <!-- <div id="mydiv" style="width: 224px" >数据处理中.... </div >-- > <div id="ProgressBarSide" style="position:absolute;height:21px;width:100px;color:Silver;border-width:1px;border-style:Solid;display:none" > <div id="ProgressBar" style="position:absolute;height:21px;width:0%;background-color:PaleTurquoise" > </div > <div id="ProgressText" style="position:absolute;height:21px;width:100%;text-align:center" > </div >
</div > </body > </html >
在你要显示的页面page_load,代码: if (!Page.IsPostBack) { beginProgress();
for (int i = 1; i <= 100; i++) { setProgress(i);
//此处用线程休眠代替实际的操作,如加载数据等 System.Threading.Thread.Sleep(20); }
finishProgress(); }
函数: /// <summary > ///显示进度条 /// </summary >
private void beginProgress() { //根据ProgressBar.htm显示进度条界面 string templateFileName = Path.Combine(Server.MapPath("."), "ProgressBar.htm"); StreamReader reader = new StreamReader(@templateFileName,System.Text.Encoding.GetEncoding("GB2312")); string html = reader.ReadToEnd(); reader.Close(); Response.Write(html); Response.Flush(); }
private void setProgress(int percent) { string jsBlock = " <script >SetPorgressBar( "" + percent.ToString() + " "); </script >"; Response.Write(jsBlock); Response.Flush(); }
private void finishProgress() { string jsBlock = " <script >SetCompleted(); </script >"; Response.Write(jsBlock); Response.Flush(); }
方法三:
1. 进度条模板文件 ProgressBar.htm 1<HTML> 2<head> 3<title></title> 4<script language="JavaScript"> 5//设置进度条进度 6function SetPorgressBar(msg, pos) 7{ 8 ProgressBar.style.width= pos +"%"; 9 WriteText("Msg1",msg +" 已完成"+ pos +"%"); 10} 11 12//设置进度条完成信息 13function SetCompleted(msg) 14{ 15 if(msg=="") 16 WriteText("Msg1","完成。"); 17 else 18 WriteText("Msg1",msg); 19} 20 21// 更新文本显示信息 22function WriteText(id, str) 23{ 24 var strTag = '<font face="Verdana, Arial, Helvetica" size="2" color="#ea9b02"><B>' + str + '</B></font>'; 25 if (document.all) document.all[id].innerHTML = strTag; 26} 27</script> 28</head> 29<body> 30<div id="Msg1"><font face="Verdana, Arial, Helvetica" size="2" color="#ea9b02"><b>正在加载</b></font></div> 31<div id="ProgressBarSide" style="color:Silver;border-width:1px;border-style:Solid;width:300px;"> 32 <div id="ProgressBar" style="background-color:#3366FF; height:21px; width:0%;"></div> 33</div> 34</body> 35</HTML>
2. Default.ASPx
1 protectedvoid Page_Load(object sender, EventArgs e) 2 { 3 // 根据 ProgressBar.htm 显示进度条界面 4 string templateFileName = Path.Combine(Server.MapPath("."), "ProgressBar.htm"); 5 StreamReader reader =new StreamReader(@templateFileName,System.Text.Encoding.GetEncoding("gb2312")); 6 string HTML = reader.ReadToEnd(); 7 reader.Close(); 8 Response.Write(HTML); 9 Response.Flush(); 10 System.Threading.Thread.Sleep(200); 11 12 // 根据处理任务处理情况更新进度条 13 string jsBlock; 14 for (int i =1; i <=100; i++) 15 { 16 System.Threading.Thread.Sleep(10); 17 jsBlock ="<script>SetPorgressBar('"+"A"+ i.ToString() +"','"+ i.ToString() +"'); </script>"; 18 19 Response.Write(jsBlock); 20 Response.Flush(); 21 } 22 23 // 处理完成 24 jsBlock ="<script>SetCompleted('处理完成。'); </script>"; 25 Response.Write(jsBlock); 26 Response.Flush(); 27 }
|
相关推荐
在Asp.net开发中,动态加载控件是一种常见的技术,它允许我们在运行时根据需要创建、添加或移除页面上的控件。这种技术对于构建高度可配置或数据驱动的Web应用程序非常有用,因为它可以减少页面的初始加载时间,并...
在网页预加载效果的实现中,ASP.NET 提供了丰富的工具和技术,可以帮助开发者优化用户体验,使得用户在等待页面加载时能感知到进度,从而提高网站的交互性和吸引力。 网页预加载是一种优化网页性能的技术,它在用户...
- 页面生命周期:理解一个ASP.NET Web Form从请求到响应的完整过程,包括初始化、加载、回发和卸载等阶段。 4. **服务器控件** - 常用控件:如Label、TextBox、Button等,以及它们的属性、方法和事件。 - 数据...
对于加载提示,它们通常以文本或图标的形式出现,告知用户程序正在运行一个过程,并可能提供一些额外的信息,比如“正在加载数据...”或“请稍候”。在.NET中,我们可以通过控制台输出、对话框(如MessageBox)或者...
《.NET前端Web模板详解——基于startbootstrap-sb-admin-2-master》 在现代Web开发中,高效且美观的前端模板对于快速构建企业级应用至关重要。.NET框架提供了丰富的工具和资源,使得开发者能够轻松创建复杂的Web...
《VB.NET Web开发精典实例》是一本专为学习VB.NET Web编程的开发者设计的实践教程,它深入浅出地展示了如何在B/S(Browser/Server)架构下进行高效的Web应用开发。B/S架构是一种典型的客户端-服务器模式,其中浏览器...
ASP.NET Web 开发示例是针对使用微软的ASP.NET框架构建Web应用程序的一个实践教程。这个框架为开发人员提供了一个高效、安全且可扩展的环境,用于创建动态网页和Web应用程序。在本文中,我们将深入探讨ASP.NET Web...
在VB.NET中进行Web程序开发是一项广泛应用于企业级应用的技术,它基于.NET Framework,提供了强大的功能和便捷的开发工具。本实例集主要涵盖了VB.NET在Web应用程序开发中的各种实际应用场景和解决方案。 首先,VB...
Asp.Net Web网站技术是微软开发的一种用于构建动态网页应用程序的框架,它允许开发者使用.NET Framework来创建功能丰富的、交互式的Web应用。本压缩包文件包含了一个完整的Asp.Net Web网站示例,其中可能包括了HTML...
**ASP.NET Web站点高级编程** 是一门深入探讨ASP.NET技术在构建高效、复杂Web应用程序方面的高级主题的学科。这门技术涵盖了从基础架构到高级特性的广泛内容,旨在帮助开发者充分利用.NET Framework的功能来创建高...
ASP.NET Web Forms中的页面生命周期包括初始化、加载、验证、呈现和卸载等阶段,理解这些阶段有助于编写正确处理用户交互的代码。同时,ASP.NET提供了多种状态管理机制,如视图状态、隐藏字段、查询字符串、会话...
ASP.NET 中使用 iframe 动态加载页面 ASP.NET 中使用 iframe 动态加载页面是指在 ASP.NET 应用程序中使用 iframe 元素来加载外部页面或资源的技术。这种技术可以使得开发者更方便地在应用程序中嵌入外部资源,提高...
通过这种方式,可以在ASP.NET应用中轻松实现页面加载时的全屏显示效果。 #### 三、总结 本文介绍了如何使用ASP.NET实现页面加载时的全屏显示功能。通过对原始代码的理解与扩展,我们不仅了解了使用.NET框架启动...
在.NET框架中,动态加载用户控件是一种常见的技术,它允许程序在运行时根据需要加载和实例化用户自定义的控件。这种技术在大型Web应用程序中尤其有用,因为可以提高程序的灵活性和可扩展性,减少初始加载时间,以及...
ASP.NET Web应用程序开发是微软公司推出的用于构建动态网站、Web应用程序和Web服务的框架。它基于.NET Framework,提供了丰富的功能和工具,使开发者能够高效地创建高性能、安全性和可伸缩性的Web解决方案。 在开发...
在学习ASP.NET Web程序设计时,首先要了解的是ASP.NET的运行环境——.NET Framework。.NET Framework是微软提供的一个全面的开发平台,包含了运行托管代码所需的所有服务和库。它提供了Common Language Runtime (CLR...
在ASP.NET框架中,动态加载Flash到Web页面是一项常见的需求,它能够为用户提供更加丰富的交互体验和视觉效果。这个控件的实现基于VS2005+C#,利用了ASP.NET的强大功能和C#语言的灵活性,使得Flash内容可以在网页上...
ASP.NET 分频加载,也称为延迟加载或按需加载,是一种优化Web应用程序性能的技术。它允许页面只在真正需要时加载部分数据或控件,而不是一次性加载所有内容,从而减少了初次加载时间,提升了用户体验,尤其是对于大...