2011-12-27 74 views
3

我试图在.NET 1.1中实现BackgroundWorker(因为没有),我不太熟悉线程和委托。实现自定义BackgroundWorker

现在我有一个类调用BackgroundWorker与DoWork方法。我知道我必须在BackgroundWorker中创建一个线程并在该线程中执行一个委托,但有两件事情我还没有十分清楚。

  1. 如何在BackgroundWorker中启动线程(如果DoWork接收到无参数委托)?或者我应该使用代表以外的其他方法吗?

  2. 如何实现ProgressChanged事件?

+2

难道真的* *不是一种选择升级到.NET 2.0(其中'BackgroundWorker' *不*存在)?就我所知,每个1.1平台都支持.NET 2.0,所以你不会失去任何东西。 – 2011-12-27 15:18:57

+0

Nop,不是(就像我试过的那样)。 – PedroC88 2011-12-27 15:20:58

+0

不要让它成为不升级的选项,如果他们想要该功能,那么升级必须发生。 – cadrell0 2011-12-27 16:08:06

回答

3
+0

我一直在阅读这篇文章,并且我似乎没有在不属于.NET-1.1部分的'DoWorkEventArgs'类中找到声明和实现。 – PedroC88 2011-12-28 12:44:09

+1

它在文章中。 public class DoWorkEventArgs:CancleEventArgs { public bool Result {get; set;} public readonly object Argument; } – rene 2011-12-28 15:08:56

+0

对不起,我错过了最后的列表... – PedroC88 2011-12-28 18:49:38