如何使用WPF后台工作人员?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (58)

我是个初学者WPF在我的应用程序中,我需要执行一系列初始化步骤:

    public void Initialization()
    {
        Thread initThread = new Thread(new ThreadStart(InitializationThread));
        initThread.Start();
    }

    public void InitializationThread()
    {
        outputMessage("Initializing...");
        //DO INITIALIZATION
        outputMessage("Initialization Complete");
    }
提问于
用户回答回答于

可能也想研究使用Task而不是背景工作者。

在您的示例中,最简单的方法是Task.Run(InitializationThread);

用户回答回答于

1.添加以下内容:using System.ComponentModel;

2.装饰

private readonly BackgroundWorker worker = new BackgroundWorker();

3.活动的范围:

worker.DoWork += worker_DoWork;
worker.RunWorkerCompleted += worker_RunWorkerCompleted;

4.实施两种方法:

private void worker_DoWork(object sender, DoWorkEventArgs e)
{
   // run all background tasks here
}

private void worker_RunWorkerCompleted(object sender, 
                                       RunWorkerCompletedEventArgs e)
{
  //update ui once worker complete his work
}

5.在需要的时候,运行Worker异步。

worker.RunWorkerAsync();

扫码关注云+社区

领取腾讯云代金券