[英]How do you pass a List<> of Lists<> to a background worker?
[英]How do I pass a function for background worker?
我想创建一个函数,以便每次当我需要在backgroundWorker中运行该函数时都可以将该函数传递给调用。 像这样。
void RunInBackgroundWorker(Func<object, DoWorkEventArgs, bool> do_work)
{
BackgroundWorker worker = new BackgroundWorker();
worker.DoWork += do_work;
worker.ProgressChanged += Worker_ProgressChanged;
worker.WorkerReportsProgress = true;
worker.RunWorkerCompleted += Worker_RunWorkerCompleted;
worker.RunWorkerAsync();
}
但是Visual Studio抱怨说它不能将类型'System.Func'隐式转换为'System.ComponentModel.DoWorkEventHandler'
这样可以做到吗? 如何正确传递函数?
worker.DoWork += (s, e) => do_work(s, e);
同样,这与WPF无关。
我实际上解决了。 我没有传递功能(Func do_work),而是传递了(DoWorkEventHandler do_work),它起作用了!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.