如何取消绑定DocumentComplete处理程序?

时间:2011-10-26 19:06:29

标签: c# html events browser

我有以下代码:

webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(Action1);
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(Action2);

工作得很好。

但是每次下载任何页面时它们似乎都会触发。 虽然我希望它们每个页面只触发一次。 说第1页的Action1,第2页的Action2等。

我尝试添加一个像这样的空处理程序:

void StopDoingStuff(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    Application.DoEvents();
}

但似乎C#将此作为DocumentComplete事件的第三个处理程序触发,因此它实际上并不会阻止其他两个。

你知道怎么解决吗?

1 个答案:

答案 0 :(得分:2)

要取消订阅活动,请使用以下语法:

webBrowser1.DocumentCompleted -= Action2

这是一个msdn解释:http://msdn.microsoft.com/en-us/library/ms366768(v=VS.100).aspx