BackgroundWorker 组件 -- 进度条

代码:

 BackgroundWorker bw = new BackgroundWorker();
        public MainWindow()
        {
            InitializeComponent();

            bw.WorkerReportsProgress = true;
            bw.WorkerSupportsCancellation = true;
            bw.DoWork += bw_DoWork;
            bw.ProgressChanged += bw_ProgressChanged;
            bw.RunWorkerCompleted += bw_RunWorkerCompleted;

        }

        void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            this.txtMsg.Text = "下载完成";
        }

        void bw_ProgressChanged(object sender, ProgressChangedEventArgs e)
        {
            this.mySlider.Value = (double)e.ProgressPercentage / 10;
            this.txtMsg.Text = ((double)e.ProgressPercentage / 10).ToString();

        }

        void bw_DoWork(object sender, DoWorkEventArgs e)
        {
            for (int i = 1; i < 100; i++)
            {
                if (bw.CancellationPending == true)
                {
                    e.Cancel = true;
                    return;
                }

                bw.ReportProgress(i);
                Thread.Sleep(TimeSpan.FromSeconds(1));

            }

        }

        private void btnStart_Click(object sender, RoutedEventArgs e)
        {
            bw.RunWorkerAsync();

        }

        private void btnCancel_Click(object sender, RoutedEventArgs e)
        {
            bw.CancelAsync();
        }

原文地址:https://www.cnblogs.com/sportdog/p/9555120.html

时间: 2024-11-10 00:15:25

BackgroundWorker 组件 -- 进度条的相关文章

[Android]组件-进度条1

多式样ProgressBar 普通圆形ProgressBar 该类型进度条也就是一个表示运转的过程,例如发送短信,连接网络等等,表示一个过程正在执行中. 一般只要在XML布局中定义就可以了. <progressBar android:id="@+id/widget43" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layou

安卓高级组件-----进度条

进度条组件是安卓重要组件之一.当后台某个程序执行时,前台进度条动态显示了程序执行进度的百分比.是耗时较长的程序让用户觉得在自己的掌控之中,提高程序的友好型. 安卓支支持几种风格的进度条,能通过style属性呢设置进度条风格,该属性如下: @android:style/Widget.ProgressBar.Horizontal    水平进度条 @android:style/Widget.ProgressBar.Inverse        普通环形进度条 @android:style/Widge

【Android开发】高级组件-进度条

当一个应用在后台执行时,前台界面不会有任何信息,这是用户根本不知道程序是否在执行以及执行进度等,因此需要使用进度条来提示程序执行的进度.在Android中,进度条(ProgressBar)用于向用户显示某个耗时操作完成的百分比. 在屏幕中添加进度天,可以在XML布局文件中通过标记添加,基本语法格式如下:    属性列表 > ProgressBar组件支持的XML属性如下所... http://songtaste.com/user/10310357/infohttp://songtaste.com

【WInform】使用BackgroundWorker控制进度条显示进度

许多开发者看见一些软件有进度条显示进度,自己想弄,项目建好后发现并没有自己想象中的那么简单...看了网上很多教程后,写了一个小Demo供网友们参考~~,Demo的网址:http://pan.baidu.com/s/1dDIxHvz BackgroundWorker可以在代码中创建,也可以在工具箱中拖,但如果要使用,必须将其的WorkerReportsProgress属性设置为True! 这个Demo是一个复制文件的,为了效果更明显,建议复制的文件多一点,方便进度条显示. 界面如下: 下面是全部代

第二百四十一节,Bootstrap进度条媒体对象和 Well 组件

第二百四十一节,Bootstrap进度条媒体对象和 Well 组件 学习要点: 1.Well 组件 2.进度条组件 3.媒体对象组件 本节课我们主要学习一下 Bootstrap 的三个组件功能:Well 组件.进度条组件.媒体对 象组件. 一.Well 组件 这个组件可以实现简单的嵌入效果. 嵌入效果 well样式class类,写在<div>里,设置一个div区块嵌入效果(Bootstrap)well-lg样式class类,写在<div>里,设置一个div区块嵌入效果大尺寸(Boo

Bootstrap 进度条媒体对象和 Well 组件

一.Well 组件 这个组件可以实现简单的嵌入效果. //嵌入效果 <div class="well"> Bootstrap </div> //有 lg 和 sm 两种可选值 <div class="well well-lg"> Bootstrap </div> 二.进度条组件 进度条组件为当前工作流程或动作提供时时反馈. //进度条 <div class="progress"> <

第 11 章 进度条媒体对象和 Well 组件

学习要点: 1.Well 组件 2.进度条组件 3.媒体对象组件 主讲教师:李炎恢 本节课我们主要学习一下 Bootstrap 的三个组件功能:Well 组件.进度条组件.媒体对象组件. 一.Well 组件 这个组件可以实现简单的嵌入效果. //嵌入效果 <div class="well"> Bootstrap </div> //有 lg 和 sm 两种可选值 <div class="well well-lg"> Bootstra

C#调用耗时函数时显示进度条浅探

第一种:使用BackgroundWorker进行进度条控制 BackgroundWorker对象有三个主要的事件: DoWork - 当BackgroundWorker对象的多线程操作被执行时触发. RunWokerCompleted - 当BackgroundWoker对象的多线程操作完成时触发. ProgressChanged - 当BackgroundWorker对象的多线程操作状态改变时触发. WorkerReportsProgress - 如果想让BackgroundWorker对象以

c# 异步进度条组件BackgroundWorker

//控件事件调用DoWork()方法就行. #region 进度条 private BackgroundWorker worker = null; private void DoWork(string outfile) { //显示进度条 ProgressForm progressForm = new ProgressForm(); progressForm.TopMost = true; progressForm.Show(this); //准备进度条的记数 worker = new Back