是否可以在一个项目中使用相同类型的两个引用?

时间:2013-09-17 13:07:41

标签: vb.net browser mshtml

我正在开发一个项目,从web到Windows窗体中获取一些信息,所以我使用 mshtml 参考。所以我可以用以下方式转换文件

  

Dim docDell As HTMLDocument = CType(WebBrowser1.Document.DomDocument,   mshtml.HTMLDocument)

以上代码效果很好!

但是当我尝试下面的代码时,它会显示警告消息* (将'system.windows.forms.htmldocument'转换为mshtml.IhtmlDocument时可能会发生运行时错误)*

  

Dim newdoc As HTMLDocument = WebBrowser1.Document

这是否可以在同一个项目中同时使用...

希望我解释得很好..

1 个答案:

答案 0 :(得分:1)

您可以在同一个项目中使用它们。您只需要注意使用哪个命名空间。由于System.Windows.Forms.HtmlDocumentmshtml.HtmlDocument都共享相同的类名,因此您需要通过指定正确的命名空间来确保使用正确的名称。

以下是您从同一WebBrowser获取两个对象的方法:

Dim unmanagedDoc As mshtml.HtmlDocument = DirectCast(WebBrowser1.Document.DomDocument, mshtml.HTMLDocument)
Dim managedDoc As System.Windows.Forms.HtmlDocument = WebBrowser1.Document