C#:HtmlDocument对象没有构造函数?

那是怎么回事? 看来获取正在运行的HtmlDocument对象的唯一方法是复制mshtml / webbrowser控件的Document属性。 但产卵是sloooooooooooow。 我想避免编写自己的HTML解析器,HtmlAgilityPack是copyleft。

是否有其他来源获取实例化的HtmlDocument,我可以将HTML从字符串转储到?

或者,当使用带有img标签和tr元素的InnerHtml / OuterHtml时,有没有办法覆盖HtmlElement令人讨厌的习惯?

编辑:我指的是System.Windows.Forms.HtmlDocument。 我很抱歉,我还是C#和.Net的新手,对COM以及本主题带来的其他一些事情知之甚少。

它没有构造函数,因为它只是一个围绕非托管对象的包装类。

参考: http : //msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.aspx

HtmlDocument提供围绕Internet Explorer文档对象的托管包装器,也称为HTML文档对象模型(DOM)。 您通过WebBrowser控件的Document属性获取HtmlDocument的实例。

根据您的需要,您可能需要查看SGMLReader或最新的社区版本 。

强大的编程?

通过WebBrowser控件使用DOM时,在尝试访问WebBrowser控件的Document属性之前,应始终等到DocumentCompleted事件发生。 加载整个文档后引发DocumentCompleted事件; 如果在此之前使用DOM,则可能会在应用程序中导致运行时exception。

http://msdn.microsoft.com/en-us/library/ms171712.aspx