我们先看下进度条效果
我点击了按钮后他会显示进度页面,进度完成后,进度条消失,其实也是比较简单的了。
我们需要一个进度条代码文件ProgressBar.htm(注意:是没有头这些标签的)
脚本语言='javascript '函数setborgressbar(pos){//设置进度条居中var screenWidth=文档。尸体。偏移;进步吧。风格。宽度=数学。圆形(屏幕宽度/2)“px”;进步吧。风格。左=数学。圆形(screenWidth/4)“px”;进步吧。风格。top=' 50px进步吧。风格。高度=' 21px进度条一侧。风格。display=' block//设置进度条百分比进度栏。风格。宽度=位置“%”;progress text . innerHTMl=pos“%”函数setMaxVaLue(MaxVaLue){ progress bar side。风格。width=MaxValue ' px} //完成后隐藏进度条函数SetCompleted(){ progressbarside。风格。显示='无';}函数SetTitle(title){ progresstitle。innerhtml=title}/script div id=' ProgressBarSide ' style=' position : absolute;高度: 21px宽度: 100像素;颜色:银色;边框宽度: 1px边框样式:实心;显示块: ' div id='进度条' style='位置:绝对;高度: 21px宽度: 0%;背景色: # 1475 bb '/div div id=' ProgressText ' style=' position : absolute;高度: 21px宽度: 100%;text-align : center '/div div id=' progress title ' style=' position : absolute;高度: 21 xtop : 21 px宽度: 100%;文本对齐:中心/div/div然后需要一个进度条类ProgressBar.cs
使用系统;使用系统。集合。通用;使用系统Linq .使用系统网络.使用系统IO;命名空间卓月娥多普。Web.UI{ ///summary //显示进度条////汇总公开课ProgressBar :系统.网络。UI.Page { ///summary //最大值////summary private int MaxValue { get { if(ViewState[' MaxValue ']==null){ return 0;} else {返回转换.ToInt32(视图状态[' MaxValue ']);} }设置{ ViewState[' MaxValue ']=value;} } ///摘要///当前值////summary private int此值{ get { if(ViewState[' this value ']==null){ return 0;} else {返回转换.ToInt32(视图状态[' this value ']);} }设置{ ViewState[' this value ']=value;} } ///摘要///当前页面////总结系统网络。UI。Page m _ page///摘要///功能描述:构造函数///作者:huangzh //创建日期:2016-05-06 11:54:34 ///任务编号:////summary///param name=' page '当前页面/param公共ProgressBar(系统网络。ui。page){ m _ page=page;} public void SetMaxValue(int IntMaxValue){ MaxValue=IntMaxValue;} ///摘要///功能描述:初始化进度条///作者:huangzh //创建日期:2016-05-06 11:55:26 ///任务编号:///摘要public void init progress(){//根据ProgressBar.htm显示进度条界面字符串模板文件名=AppDomain .当前域。“基本目录”进度条。htm ';流阅读器=新的流阅读器(@模板文件名,系统文本。编码。getencoding(' GB2312 ');string strhtml=reader .ReadToEnd();读者close();m_page .回应。write(strhtml);m_page .响应。刷新();} ///摘要///功能描述:设置标题///作者:huangzh //创建日期:2016-05-06 11:55:36 ///任务编号:////summary///param name=' strTitle ' strTitle/param public void SetTitle(string strTitle){ string strjsBlock=' script SetTitle '(' strTitle ');/script ';m_page .响应。写(strjsBlock);m_page .响应。刷新();} ///摘要///功能描述:设置进度///作者:huangzh //创建日期:2016-05-06 11:55:45 ///任务编号:////summary///param name=' percent ' percent/param public void AddProgress(int percent){此值=此值int percent;double dblstep=((double)这个值/(double)MaxValue)* 100;string Strjsblock=' scriptsetborgressbar '(' dblstep .ToString(' 0.00 ')' ');/script ';m_page .响应。写(strjsBlock);m_page .响应。刷新();} public void DisponseProgress(){ string strjsBlock=' scriptSetCompleted();/script ';m_page .响应。写(strjsBlock);m_page .响应。刷新();} }}然后就是调用方法了,调用很简单,在页面的按钮事件或者其他什么地方加入代码,如在按钮事件里这么用
受保护的void btnImport_Click(对象发送者,事件参数e){进度条Pb=新进度条(此);铅SetMaxValue(110);铅InitProgress();铅SetTitle('这是一个测试数据');for(int I=1;i=110i ) { pb .添加ProgreSs(1);//此处用线程休眠代替实际的操作,如加载数据等系统。线程。线程。睡眠(50);} pb .DisponseProgress();}怎么样,是不是很简单呢。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。