BackgroundWorker 的 C# 问题

标签 c# backgroundworker

我的组件“BackgroundWorker”有问题

当我点击一个按钮时,我必须执行 n 次迭代,这需要时间并且我必须将此操作委托(delegate)给另一个线程

我遵循了本教程:tutorial (in french)

这是我的代码:

    private void btnIterate_Click(object sender, EventArgs e)
    {
        bgwIterer.RunWorkerAsync();                
    }

    private void bgwIterer_DoWork(object sender, DoWorkEventArgs e)
    {
        BackgroundWorker worker = sender as BackgroundWorker;
        e.Result = new Iterate(btnIterate, btnReinit, txtInput, lblState, entree, worker, e);
    }

    private void bgwIterer_ProgressChanged(object sender, ProgressChangedEventArgs e)
    {
        this.lblState.Text = e.ProgressPercentage;
    }

bgwIterer 是我的 BackgroundWorker 组件 这是我想委托(delegate)的方法:

class Iterate
{
    // Constructeur surchargé de la classe Iterate:
    public Iterate(Button mybtnIterate, Button mybtnReinit,
    TextBox mytxtInput, Label mylblState,
    int myentree, BackgroundWorker worker,
    DoWorkEventArgs e)
    {
        int pourcent = 0;
        int var0 = 0, var1;
        mybtnIterate.Enabled = false;
        mytxtInput.Focus();
        do
        {
            var1 = 0;
            do
            {
                ++var1;
            }
            while (var1 < myentree);
            ++var0;
            pourcent = (var0 / myentree) * 100;
            worker.ReportProgress(pourcent);
        }
        while (var0 < myentree);
        mylblState.Text = "Terminé !";
        mytxtInput.Enabled = false;
    }

}

这就是问题所在:

找不到类型或命名空间名称“BackGroundWorker”(是否缺少 using 指令或程序集引用?)

有人有想法吗?

最佳答案

尝试添加:

using System.ComponentModel;

关于BackgroundWorker 的 C# 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6110485/

相关文章:

c# - 在无限循环中按顺序运行任务

c# - 可以为 null 的 bool 值或具有默认值的 bool 值在起作用吗?

c# - 将代码/bin 文件(重新)部署到(多个)Windows Azure 虚拟机的方法

.net - 取消BackgroundWorker,如何在已经完成时防止比赛

c# - 安全正确的结构编码

c# - Xamarin 在 iOS、Android 和 Core 项目之间共享代码

c# BackgroundWorker DoWork 方法调用另一个类和 ProgressReport

asp.net-mvc - 后台任务/作业/进程,在 asp.net MVC 3 中

C#/WPF - 我无法从后台工作人员更新 UI

c# - 在后台线程上散列大文件