From the MSDN the return type is just "object".
But this object returned could be cast-ed to mshtml.HTMLDocument if you want to manipulate the elements, or the very same object could be cast-ed to (mshtml.HTMLDocumentEvents2_Event) if you want to register event callback.
In MSHTML reference, there are so many interfaces defined. But it is unclear that how those interfaces be used with the WPF WebBrowser.Document object
If the returned object is a COM object, so What is it? What is the different between this WPF WebBrowser.Document and the windows form WebBrower.Document?
Example code:
mshtml.HTMLDocument doc = (mshtml.HTMLDocument)_browser.Document;
IHTMLElement bt = doc.getElementById("123");
mshtml.HTMLDocumentEvents2_Event iEvent = (mshtml.HTMLDocumentEvents2_Event)_browser.Document;
iEvent.onclick += new HTMLDocumentEvents2_onclickEventHandler(ClickEventHandler);