我使用了“LoadCompleted”事件,基本上一旦收到该事件,我就需要截取屏幕截图(我已经构建)。问题是一旦这个事件结束,屏幕截图就只是空白(页面还没有加载),只有当我延迟 5-10 秒时,屏幕截图才会起作用
现在如何确定网页何时完全呈现?加载所有方面等等
请您参考如下方法:
您的问题是 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
}
您可能需要对优先级进行一些试验,但背景似乎对我有用。
