Q:WebBrowser如何让DocumentCompleted事件执行完毕后再往下执行?
A:使用信号量,等待一下
System.Threading.AutoResetEventobj
=
new
System.Threading.AutoResetEvent(
false
);
void
webBrowser1_DocumentCompleted(
object
sender,WebBrowserDocumentCompletedEventArgse)
...
{
obj.Set();
}

private
void
button1_Click(
object
sender,EventArgse)
...
{
this .webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser1_DocumentCompleted);
this .webBrowser1.Navigate( " www.sina.com.cn " );
obj.Reset();
while (obj.WaitOne( 10 , false ) == false ) ... {Application.DoEvents();}
MessageBox.Show( "" );
}
本文介绍了一种在WebBrowser控件中确保DocumentCompleted事件完成后继续执行后续代码的方法。通过使用AutoResetEvent信号量来实现线程间的同步,确保页面加载完成后再进行下一步操作。
1万+

被折叠的 条评论
为什么被折叠?



