2012-12-25 76 views
2

好吧,我一直在寻找这个问题的一整天。我有一个循环,我在其中加载网页并解析它们。WebBrowser页面加载循环

的问题是,Application.DoEvents和while循环复位每一个变量和反 Thread.sleep()方法会影响其中载入网页 线程也是如此AutoResetEvent.WaitOne

这里是我的代码

private void button1_Click_1(object sender, EventArgs e) 
{ 
//some code... 
for (int i = 1; i < div.Children.Count; i++) 
     { 
      webview.Navigate(addr); 
      //wait until page is loaded 
      html_code.Text += "OK!"; //do further actions 
     } 
} 

您注意到我有一个for循环,所以上面列出的所有方法都不起作用。我请你帮我解决我的问题

更新:我找到了解决方案。它在这里https://stackoverflow.com/a/4271581/1894634

+1

做u想只是有这个页面的HTML? – VladL

+0

其实,是的,但在我需要解析那些非常负载的页面之前 –

回答

2

描述如果你只需要HTML性反应,最好使用WebClient.DownloadStringWebClient.DownloadStringAsync方法

WebClient client = new WebClient(); 
//client.Credentials = new NetworkCredential(username, password); 
string html_code = client.DownloadString (addr); 
+0

解析页面的好方法。非常感谢你 –

+0

@PhilippConstantinopolski欢迎:) – VladL

+0

好吧,正如它发现的,这种方法是有帮助的,但不适合我。该错误说我需要登录。 –