请建议一种方法或功能,使代码在继续之前等待几秒钟。我知道thread.sleep方法,但它会冻结整个程序。
我想暂停一下,让程序在继续下一部分之前完成程序。目前程序执行所有程序的速度太快,无法遵循其他程序。
这是我的代码:
{
w1.Document.GetElementById("lst-ib").InnerText = "some text";
w1.Document.Forms[0].InvokeMember("submit");
//Some code here that would create a 1 second pause before downloading html.
//Thread.sleep(2000) is not suitable.
string html = new WebClient().DownloadString(w1.Url.ToString());
答案 0 :(得分:0)
我猜W1
是一个WebBrowser控件。
您可以使用DocumentCompleted
事件来了解WebBrowser已完成加载,然后您可以访问新URL的DOM。
如果您多次导航,您只需要保留一些状态即可知道您在此过程中的位置。
答案 1 :(得分:-1)
我会使用BackgroundWorker
进行下载,在此主题中,您可以在下载之前使用Sleep
函数。
http://www.codeproject.com/Articles/99143/BackgroundWorker-Class-Sample-for-Beginners