BackGroundWorker是微软提供的封装好了的,非常实用的控件,我们可以在控件中将其拖到Winform之中,然后简单的系统生成代码式的编辑事件处理。
以下是,比较经典且简单的实用,后面的一篇较复杂,不使用微软控件式,自行生成,并传递参数给多线程,并通过多线程更新主线程的多处UI,线程没操作完一笔记录,则报告进度,更新UI。
下图是微软提供给我们的控件,拖到Winform中
我们可以看到有如下三个事件:
1、线程执行的动作,一般用于复杂操作,DoWork
2、线程进度改变,进度条变化
3、线程执行完,这时候,又回到主线程执行了,可以访问主线程中的UI,操作主线程的UI
下列是最基本的核心代码,只给出最核心部分,其他简单部分省略。
如果我主线程要传递参数,以及多线程如何接受参数,可以参考多线程按F12去查看微软给出的操作,一般较多的是DataTable类型的,这个也是最常用的,可以参考笔者之前的关于多线程的一些比较实用的文章。
分享共进步!
谢谢阅读!