Получение высоты страницы из элемента управления WinForms WebBrowser - PullRequest
8 голосов
/ 24 апреля 2009

Последние несколько дней я пытался получить высоту веб-страницы из свойства Document элемента управления WebBrowser.

Вот моя последняя попытка.

HtmlElementCollection children = webBrowser.Document.All;
int maxOffset = 0;


foreach (HtmlElement child in children) {
    int bottom = 0;
    bottom = child.OffsetRectangle.Bottom;
    if (bottom > maxOffset) {
        maxOffset = bottom;
        pageHeight = maxOffset;
    }
}

Я попытался определить максимальную высоту страницы, найдя смещение нижней части самого нижнего элемента на странице.

Проблема в том, что в большинстве случаев фактическая длина страницы увеличивается на 500px.

У кого-нибудь есть идеи? Я не могу поверить, как трудно получить высоту страницы!

Ответы [ 2 ]

16 голосов
/ 27 августа 2010

Это сработало для меня:

webBrowser.Document.Body.ScrollRectangle.Height
1 голос
/ 19 мая 2009

Найдите тег BODY и получите OffsetRectangle.Bottom этого элемента. Это даст вам высоту страницы.

...