可靠地等待页面加载2

时间:2017-05-30 11:17:42

标签: sdk awesomium

如何在awesomium浏览器结束呈现页面时完全检测到?我尝试使用此代码,但它不正确检测它。在SO我找不到答案。

bool LoadingFinished;

    Wb.LoadingFrameComplete += WbLoadingFrameCompleted;
    ...

void WbLoadingFrameCompleted(object sender, FrameEventArgs e)
{
    if (!e.IsMainFrame)
        return;

    LoadingFinished = true;
}

void LoadUrl(string url)
{
    LoadingFinished = false;

    Wb.Source = new Uri(url);

    while (!LoadingFinished)
    {
        Thread.Sleep(100);
        WebCore.Update(); 
    }
}

2 个答案:

答案 0 :(得分:0)

更改网址后尝试此代码:

Window

答案 1 :(得分:0)

在实现IWebView界面的webView上,您可以订阅 DocumentReady 事件:

webView.DocumentReady += DocumentReady;

您的事件处理程序

private void DocumentReady(object sender, DocumentReadyEventArgs e){
    LoadingFinished = true;
}

请注意,Awesomium项目已经完全死了(请参阅homepage目前只说“我们正在建设新的东西!”)。您还可以考虑使用其他框架,例如CefGlueCefSharp