我正在使用axWebBrowser
来进行一些网络自动化。
当系统触发NewWindow2
事件时,它无法在新窗口中跟踪HTML元素。调试后,我注意到axWebBrowser1.ReadyState
等于ReadyState_Complete
,尽管新窗口尚未完成加载。
private void axWebBrowser1_DocumentComplete(object sender, AxSHDocVw.DWebBrowserEvents2_DocumentCompleteEvent e) {
if (axWebBrowser1.ReadyState == SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE) {
// some code...
}
}
如何等待新窗口完成加载,以便我可以检测到其中的HTML元素?
答案 0 :(得分:1)
我认为您可以处理ProgressChanged
事件:
private void webBrowser_ProgressChanged(object sender, WebBrowserProgressChangedEventArgs e)
{
siteLoading.Value = (int)e.CurrentProgress;
if (e.CurrentProgress >= e.MaximumProgress)
{
// Loaded.
}
}
看看以下问题:
http://www.vbforums.com/showthread.php?t=526871
http://social.msdn.microsoft.com/Forums/en/ieextensiondevelopment/thread/8785ddcc-6f48-410b-8cd4-122b3f2b0e34