2

我使用了“LoadCompleted”事件,基本上一旦收到事件,我需要截取屏幕截图(我已经构建)。问题是一旦这个事件消失,屏幕截图只是空白(页面尚未加载),只有我延迟 5-10 秒,屏幕截图才会起作用

现在如何确定网页何时完全呈现?加载所有方面等等

4

1 回答 1

0

您的问题是 LoadCompleted 事件在页面加载后立即调用,但在呈现之前。我不知道有什么方法可以准确判断它何时完成渲染,但您可以使用 Dispatcher 确保您的代码在任何渲染发生后运行。

private void Browser_LoadCompleted(object sender, NavigationEventArgs e)
{
    Dispatcher.Invoke(TakeScreenshot, System.Windows.Threading.DispatcherPriority.Background);
}

private void TakeScreenshot()
{
    //insert your screenshot code here
}

您可能需要稍微尝试一下优先级,但背景似乎对我有用。

于 2013-01-16T21:50:44.160 回答