c# - 以 WebBrowser 窗体(Windows 窗体 C#)完全加载页面时的 DocumentCompleted 事件

标签 c# .net winforms

我使用 DocumentCompleted 但这会被触发多次。现在我看到了这个示例 if (e.Url.AbsolutePath != this.webBrowser.Url.AbsolutePath) 用于确认请求的文件已完成加载,但它在其他任何事情之前被触发页面上的(如图像)已加载。因此,我仍然无法判断网页何时已完全加载。

有没有办法确保网页已完全加载并且没有任何内容正在加载?

最佳答案

DocumentCompleted 事件针对网页中的每一帧以及所有已加载的子文档(例如 JS 和 CSS)触发。您可以查看 DocumentCompleted 中的 WebBrowserDocumentCompletedEventArgs 并检查 Url 属性并将其与主页的 Url 进行比较。

最简单的方法是检查完成加载的 URL:

void webBrowser1_DocumentCompleted(object sender,
        WebBrowserDocumentCompletedEventArgs e)
{
    if (e.Url.Equals(webBrowser1.Url)) {
        // Here the page is fully loaded        
    }
}

关于c# - 以 WebBrowser 窗体(Windows 窗体 C#)完全加载页面时的 DocumentCompleted 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13171093/

相关文章:

c# - 使用表达式为 Entity Framework 构建 Array.Contains

.net - .NET 中每月的最后一天

.net - ServiceConfiguration.cscfg 中的自定义/嵌套 XML 设置

c# - 用更好的浏览器(如 Chrome)替换 .NET WebBrowser 控件?

c# - 将数据更新到asp.net中的gridview中

c# - 服务器发送的事件、AJAX 轮询、WebSocket 通知

c# - 用于检查文件内容类型的正则表达式是否为 .doc?

.net - 一键式部署如何发布多个应用程序/流程?

c# - DockPanelSuite 的 DockState 和 AutoHide

c# - 在 Windows 窗体应用程序中实现单词拼写检查