从WinForms WebBrowser控件获取页面高度

8 c# webbrowser-control

在过去的几天里,我一直在努力从WebBrowser控件的Document属性中获取网页的高度.

这是我最近的尝试.

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;
    }
}
Run Code Online (Sandbox Code Playgroud)

我试图通过查找页面中最低元素的偏移底部来计算页面的最大高度.

问题是,在大多数情况下,这会使页面的实际长度大约为500px.

有人有任何想法吗?我无法相信获得页面高度有多难!

小智 16

这对我有用:

webBrowser.Document.Body.ScrollRectangle.Height
Run Code Online (Sandbox Code Playgroud)


Rob*_*ert 1

找到BODY标签并获取该元素的OffsetRectangle.Bottom。这将为您提供页面的高度。