我们先看下进度条效果
我点击了按钮后他会显示进度页面,进度完成后,进度条消失,其实也是比较简单的了。
我们需要一个进度条代码文件ProgressBar.htm(注意:是没有head这些标签的)
<script language="javascript">
function SetPorgressBar(pos) {
//设置进度条居中
var screenWidth = document.body.offsetWidth;
ProgressBarSide.style.width = Math.round(screenWidth / 2) + "px";
ProgressBarSide.style.left = Math.round(screenWidth / 4) + "px";
ProgressBarSide.style.top = "50px";
ProgressBarSide.style.height = "21px";
ProgressBarSide.style.display = "block";
//设置进度条百分比
ProgressBar.style.width = pos + "%";
ProgressText.innerHTML = pos + "%";
}
function SetMaxValue(maxValue) {
ProgressBarSide.style.width = maxValue + "px";
}
//完成后隐藏进度条
function SetCompleted() {
ProgressBarSide.style.display = "none";
}
function SetTitle(title) {
ProgressTitle.innerHTML = title;
}
</script>
<div id="ProgressBarSide" style="position: absolute; height: 21px; width: 100px;
color: Silver; border-width: 1px; border-style: Solid; display: block">
<div id="ProgressBar" style="position: absolute; height: 21px; width: 0%; background-color: #1475BB">
</div>
<div id="ProgressText" style="position: absolute; height: 21px; width: 100%; text-align: center">
</div>
<div id="ProgressTitle" style="position: absolute; height: 21px; top: 21px; width: 100%;
text-align: center">
</div>
</div>
然后需要一个进度条类ProgressBar.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.IO;
namespace ZhuoYueE.Dop.Web.UI
{
/// <summary>
///显示进度条
/// </summary>
public class ProgressBar : System.Web.UI.Page
{
/// <summary>
/// 最大值
/// </summary>
private int MaxValue
{
get
{
if (ViewState["MaxValue"] == null)
{
return 0;
}
else
{
return Convert.ToInt32(ViewState["MaxValue"]);
}
}
set
{
ViewState["MaxValue"] = value;
}
}
/// <summary>
/// 当前值
/// </summary>
private int ThisValue
{
get
{
if (ViewState["ThisValue"] == null)
{
return 0;
}
else
{
return Convert.ToInt32(ViewState["ThisValue"]);
}
}
set
{
ViewState["ThisValue"] = value;
}
}
/// <summary>
/// 当前页面
/// </summary>
System.Web.UI.Page m_page;
/// <summary>
/// 功能描述:构造函数
/// 作 者:huangzh
/// 创建日期:2016-05-06 11:54:34
/// 任务编号:
/// </summary>
/// <param name="page">当前页面</param>
public ProgressBar(System.Web.UI.Page page)
{
m_page = page;
}
public void SetMaxValue(int intMaxValue)
{
MaxValue = intMaxValue;
}
/// <summary>
/// 功能描述:初始化进度条
/// 作 者:huangzh
/// 创建日期:2016-05-06 11:55:26
/// 任务编号:
/// </summary>
public void InitProgress()
{
//根据ProgressBar.htm显示进度条界面
string templateFileName = AppDomain.CurrentDomain.BaseDirectory + "ProgressBar.htm";
StreamReader reader = new StreamReader(@templateFileName, System.Text.Encoding.GetEncoding("GB2312"));
string strhtml = reader.ReadToEnd();
reader.Close();
m_page.Response.Write(strhtml);
m_page.Response.Flush();
}
/// <summary>
/// 功能描述:设置标题
/// 作 者: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.Response.Write(strjsBlock);
m_page.Response.Flush();
}
/// <summary>
/// 功能描述:设置进度
/// 作 者:huangzh
/// 创建日期:2016-05-06 11:55:45
/// 任务编号:
/// </summary>
/// <param name="percent">percent</param>
public void AddProgress(int intpercent)
{
ThisValue = ThisValue + intpercent;
double dblstep = ((double)ThisValue / (double)MaxValue) * 100;
string strjsBlock = "<script>SetPorgressBar('" + dblstep.ToString("0.00") + "'); </script>";
m_page.Response.Write(strjsBlock);
m_page.Response.Flush();
}
public void DisponseProgress()
{
string strjsBlock = "<script>SetCompleted();</script>";
m_page.Response.Write(strjsBlock);
m_page.Response.Flush();
}
}
}
然后就是调用方法了,调用很简单,在页面的按钮事件或者其他什么地方加入代码,如在按钮事件里这么用
protected void btnImport_Click(object sender, EventArgs e)
{
ProgressBar pb = new ProgressBar(this);
pb.SetMaxValue(110);
pb.InitProgress();
pb.SetTitle("这是一个测试数据");
for (int i = 1; i <= 110; i++)
{
pb.AddProgress(1);
//此处用线程休眠代替实际的操作,如加载数据等
System.Threading.Thread.Sleep(50);
}
pb.DisponseProgress();
}
怎么样,是不是很简单呢。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# asp.net
# 进度条
# Asp.net基于ajax和jquery-ui实现进度条
# asp.net mvc 实现文件上传带进度条的思路与方法
# asp.net文件上传带进度条实现案例(多种风格)
# asp.net单文件带进度条上传的解决方案
# Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
# asp.net 生成静态页时的进度条显示
# 利用Asp.Net回调机制实现进度条
# ASP.NET技巧:教你制做Web实时进度条
# ASP.NET MVC使用jQuery ui的progressbar实现进度条
# 创建日期
# 很简单
# 完成后
# 这是一个
# 他会
# 什么地方
# 或者其他
# 如在
# 先看
# 大家多多
# 测试数据
# 加载
# 用线
# title
# SetTitle
# ProgressTitle
# position
# maxValue
# div
相关文章:
保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?
如何在局域网内绑定自建网站域名?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
如何选择高效响应式自助建站源码系统?
详解jQuery停止动画——stop()方法的使用
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?
建站中国官网:模板定制+SEO优化+建站流程一站式指南
建站之星后台管理如何实现高效配置?
如何在Windows 2008云服务器安全搭建网站?
如何在建站主机中优化服务器配置?
如何通过.red域名打造高辨识度品牌网站?
如何通过服务器快速搭建网站?完整步骤解析
常州企业建站如何选择最佳模板?
如何解决VPS建站LNMP环境配置常见问题?
建站主机与虚拟主机有何区别?如何选择最优方案?
如何获取开源自助建站系统免费下载链接?
代刷网站制作软件,别人代刷火车票靠谱吗?
如何通过虚拟主机快速搭建个人网站?
专业商城网站制作公司有哪些,pi商城官网是哪个?
广东专业制作网站有哪些,广东省能源集团有限公司官网?
如何在IIS中新建站点并解决端口绑定冲突?
测试制作网站有哪些,测试性取向的权威测试或者网站?
建站之星后台搭建步骤解析:模板选择与产品管理实操指南
如何构建满足综合性能需求的优质建站方案?
建站之星2.7模板:企业网站建设与h5定制设计专题
如何快速搭建FTP站点实现文件共享?
如何在自有机房高效搭建专业网站?
如何自定义建站之星网站的导航菜单样式?
建站主机无法访问?如何排查域名与服务器问题
全景视频制作网站有哪些,全景图怎么做成网页?
孙琪峥织梦建站教程如何优化数据库安全?
网站专业制作公司有哪些,做一个公司网站要多少钱?
,交易猫的商品怎么发布到网站上去?
宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?
如何在Windows虚拟主机上快速搭建网站?
c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】
网站制作网站,深圳做网站哪家比较好?
网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?
小说建站VPS选用指南:性能对比、配置优化与建站方案解析
建站之星好吗?新手能否轻松上手建站?
购物网站制作公司有哪些,哪个购物网站比较好?
免费网站制作appp,免费制作app哪个平台好?
如何用好域名打造高点击率的自主建站?
网页设计网站制作软件,microsoft office哪个可以创建网页?
如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本
网站制作免费,什么网站能看正片电影?
如何注册花生壳免费域名并搭建个人网站?
建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南
存储型VPS适合搭建中小型网站吗?
*请认真填写需求信息,我们会在24小时内与您取得联系。