怎么用代码控制,网页打开完毕后执行******(一段代码)?
我知道webBrowser有个DocumentCompleted事件。
(在web浏览器控件中承载的文档圈闭加载完毕后发生)
但是怎样在一个按钮单击事件中用呢???
有没有什么其他方法控制web控件加载文档完毕后执行代码?
8 个解决方案
#1
看看呀!!!!
#2
你在按钮单击事件中动态调用不行吗?
然后把你的要执行的写在调用这个之后
private void webBrowser1_DocumentCompleted(object sender,WebBrowserDocumentCompletedEventArgs e)
然后把你的要执行的写在调用这个之后
#3
添了后要再刷新才行
#4
这样感觉很不方便,要新建个方法、、、、
有没有其他方法呢??比如获取控件的状态是否在加载网页之类的???
有没有其他方法呢??比如获取控件的状态是否在加载网页之类的???
#5
可以循环判断webBrowser1.IsBusy==false和webBrowser1.ReadyState==WebBrowserReadyState.Complete,但是有可能会误判
#6
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
button1.performClick();
}
{
while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
button1.performClick();
}
#7
顶
#8
C#的webBrowser控件,浏览完毕判断的真正的方法:
1.在浏览一个新页面之前
int loadingNumber = 0;
int completeNumber = 0;
2.开始浏览
3.事件:Navigating
loadingNumber++;
4.事件:DocumentCompleted
completeNumber++
如果completeNumber == loadingNumber
则本次加载结束,进行下一次加载。
环境
VS2008
C# WinForm
测试页面:
http://www.163.com
http://www.sohu.com
http://www.qq.com
http://www.csdn.com
http://www.msdn.com
鄙视下那些用 Application.DoEvents ,以及用 Navigated 做判断,以及 webBrowser1 属性的人,话说你们真做过测试了?
1.在浏览一个新页面之前
int loadingNumber = 0;
int completeNumber = 0;
2.开始浏览
3.事件:Navigating
loadingNumber++;
4.事件:DocumentCompleted
completeNumber++
如果completeNumber == loadingNumber
则本次加载结束,进行下一次加载。
环境
VS2008
C# WinForm
测试页面:
http://www.163.com
http://www.sohu.com
http://www.qq.com
http://www.csdn.com
http://www.msdn.com
鄙视下那些用 Application.DoEvents ,以及用 Navigated 做判断,以及 webBrowser1 属性的人,话说你们真做过测试了?
#1
看看呀!!!!
#2
你在按钮单击事件中动态调用不行吗?
然后把你的要执行的写在调用这个之后
private void webBrowser1_DocumentCompleted(object sender,WebBrowserDocumentCompletedEventArgs e)
然后把你的要执行的写在调用这个之后
#3
添了后要再刷新才行
#4
这样感觉很不方便,要新建个方法、、、、
有没有其他方法呢??比如获取控件的状态是否在加载网页之类的???
有没有其他方法呢??比如获取控件的状态是否在加载网页之类的???
#5
可以循环判断webBrowser1.IsBusy==false和webBrowser1.ReadyState==WebBrowserReadyState.Complete,但是有可能会误判
#6
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
button1.performClick();
}
{
while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
button1.performClick();
}
#7
顶
#8
C#的webBrowser控件,浏览完毕判断的真正的方法:
1.在浏览一个新页面之前
int loadingNumber = 0;
int completeNumber = 0;
2.开始浏览
3.事件:Navigating
loadingNumber++;
4.事件:DocumentCompleted
completeNumber++
如果completeNumber == loadingNumber
则本次加载结束,进行下一次加载。
环境
VS2008
C# WinForm
测试页面:
http://www.163.com
http://www.sohu.com
http://www.qq.com
http://www.csdn.com
http://www.msdn.com
鄙视下那些用 Application.DoEvents ,以及用 Navigated 做判断,以及 webBrowser1 属性的人,话说你们真做过测试了?
1.在浏览一个新页面之前
int loadingNumber = 0;
int completeNumber = 0;
2.开始浏览
3.事件:Navigating
loadingNumber++;
4.事件:DocumentCompleted
completeNumber++
如果completeNumber == loadingNumber
则本次加载结束,进行下一次加载。
环境
VS2008
C# WinForm
测试页面:
http://www.163.com
http://www.sohu.com
http://www.qq.com
http://www.csdn.com
http://www.msdn.com
鄙视下那些用 Application.DoEvents ,以及用 Navigated 做判断,以及 webBrowser1 属性的人,话说你们真做过测试了?