这篇文章主要介绍了c# BackgroundWorker组件的作用,帮助大家更好的理解和使用c#编程语言,感兴趣的朋友可以了解下
当构建一个图形化的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++详细实现完整图书管理功能 2023-04-04
- C++中的atoi 函数简介 2023-01-05
- C++使用easyX库实现三星环绕效果流程详解 2023-06-26
- 详解c# Emit技术 2023-03-25
- C/C++编程中const的使用详解 2023-03-26
- C语言基础全局变量与局部变量教程详解 2022-12-31
- C语言 structural body结构体详解用法 2022-12-06
- 如何C++使用模板特化功能 2023-03-05
- 一文带你了解C++中的字符替换方法 2023-07-20
- C利用语言实现数据结构之队列 2022-11-22