概述
当构建一个图形化的Windows Form桌面应用程序并且需要执行在应用程序主UI线程之外的线程中长时间的任务时,BackgroundWorker类就很有用了。
要使用BackgroundWorker,我们只需要告诉它希望在后台执行那个方法并且调用RunWorkerAsync()即可
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { int a = int.Parse(textBox1.Text.Trim()); int b = int.Parse(textBox2.Text.Trim()); Add ad = new Add(a,b); backgroundWorker1.RunWorkerAsync(ad); } private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { Add args=(Add)e.Argument; for (int i = 0; i < 11; i++) { Thread.Sleep(200); backgroundWorker1.ReportProgress(i*10); } e.Result = args.a + args.b; } private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { label1.Text = e.Result.ToString(); } private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e) { progressBar1.Value = e.ProgressPercentage; } } public class Add { public int a; public int b; public Add(int a, int b) { this.a = a; this.b = b; } }
以上就是c# BackgroundWorker组件的作用的详细内容,更多关于c# BackgroundWorker组件的资料请关注靠谱客其它相关文章!
最后
以上就是可靠小伙为你收集整理的c# BackgroundWorker组件的作用的全部内容,希望文章能够帮你解决c# BackgroundWorker组件的作用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复