How do I cast a System.Windows.Control WebBrowser.Document to an mshtml.MSHTMLDocumentClass?

Adam picture Adam · Jan 30, 2014 · Viewed 8.5k times · Source

I have a WebBrowser that loads inside a WPF window. I need to get the title of the web page loaded in the WebBrowser.

I get the document using

object doc = this._browser.Document; and I can see that it is an mshtml.MSHTMLDocument and I want to cast it as this type so that I can pull the title out, however I can't find this type in any .NET library.

Will I have to create the type myself or am I just looking in the wrong place/approaching this wrong way?

How can I pull the page title out of a System.Windows.Controls.WebBrowser Document?

Answer

dkozl picture dkozl · Jan 30, 2014

Either add reference to Microsoft.mshtml and then:

var title = (webBrowser.Document as mshtml.HTMLDocument).title;

or

dynamic doc = webBrowser.Document;
var title = doc.title;