Как получить все mshtml.IHTMLDivElement из IHTMLDocument2? - PullRequest
2 голосов
/ 10 февраля 2012

Как получить все mshtml.IHTMLDivElement из IHTMLDocument2?

  private mshtml.IHTMLDocument2 doc = (IHTMLDocument2)WPFBrowser.Document;

  ???

  List<mshtml.IHTMLDivElement> allDivs = ???

Ответы [ 2 ]

5 голосов
/ 10 февраля 2012

Я нашел решение. Работает фантастически!

mshtml.IHTMLDocument2 doc = (IHTMLDocument2)MainBrowser.Document;

if (null != doc)
{
     foreach (IHTMLElement element in doc.all)
     {
           if (element.id == "wrapper")
           {
                 HTMLDivElement container = element as HTMLDivElement;

                 dynamic dd = container;

                 string result = dd.IHTMLElement_innerHTML;

                 // You get ANY member of HTMLDivElementClass

                  break;
             }
     }
}
2 голосов
/ 10 февраля 2012
List<mshtml.IHTMLDivElement> allDiv = doc
    .all.OfType<mshtml.IHTMLDivElement>()
    .ToList();
...