WebBrowser页面加载循环

时间:2012-12-25 16:24:38

标签: c#

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

问题是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 个答案:

答案 0 :(得分:2)

如果您只需要html回复,最好使用WebClient.DownloadStringWebClient.DownloadStringAsync方法

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