如何从包含事件的类返回值

时间:2015-02-28 07:57:31

标签: c# class events return

我需要一个使用WebBrowser来检索某些数据的类,然后将该数据返回给另一个类。问题是WebBrowser是异步的并且使用事件,因此返回数据的方法在WebBrowser.DocumentCompleted -event被触发之前结束,并且不返回任何数据。我必须使用WebBrowser而不是WebClient,因为我需要与网页进行互动。

如何在触发所有事件后创建一个返回数据的类,例如设置了一些布尔标志?

1 个答案:

答案 0 :(得分:1)

理想情况下,您应该在类中公开另一个由WebBrowsers DocumentCompletedEvent触发的事件。这将为您班级的消费者提供订阅此活动的可能性。否则你将不得不阻止调用者的线程等待webbrowser完成,这不是一件好事。