有谁知道使用System.Windows.Forms.WebBrowser对象的教程吗?环顾四周,却找不到。到目前为止,我的代码是(非常复杂):

System.Windows.Forms.WebBrowser b = new System.Windows.Forms.WebBrowser();
b.Navigate("http://www.google.co.uk");

但实际上并不会在任何地方导航(即b.Url为null,b.Document为null等)

谢谢

最佳答案

浏览器导航到页面需要花费时间。在导航完成之前,Navigate()方法不会阻塞,这将卡住用户界面。完成后会触发DocumentCompleted事件。您必须将代码移到该事件的事件处理程序中。

另一个要求是,创建WB的线程对于单线程COM组件来说是一个幸福的家。它必须是STA并泵送消息循环。控制台模式应用程序不满足此要求,只有Winforms或WPF项目才具有这样的线程。检查this answer以获取与控制台模式程序兼容的解决方案。

关于c# - 如何使用.net WebBrowser对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5716662/

10-17 01:03