[英]Using Progress Bar in C#
我正在构建一个从pdf文件读取数据并将其插入数据库的应用程序。 为此,我有一些方法,我想添加一个进度条,以使用后端方法显示完成的任务百分比。 我如何为此添加进度条。 我正在使用VS2013。例如,我有
method.1();
method.2();
method.3();
method...();
...........
我希望进度条显示这些方法的完成进度。
假设progressBar
为进度栏
将其定义为公共静态
这是方法
public static void reportProgress(int incValue) {
progressBar.Value += incValue;
}
如果要传输数据,请使progressbars最大值达到要传输的数据量,并使用此方法通过添加已传输的字节来增加其值
设置进度条最大值
progressBar.Maximum(bytesOfData);
首先,您需要初始化进度栏
progressBar.Value = 0;
progressBar.Maximum= MethodsCount;
为了使进度条保持更新,您需要使用新线程来调用要执行的所有方法,如下所示
Task.Factory.StartNew(()=>
{
//Call your methods
//Method1();
//then you need to call dispatcher to update the progress bar value because you are using a different Thread
Application.Current.Dispatcher.Invoke(()=>{ progressBar.Value += 1;});
//Method2();
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.