for (int y = 1; y <= Detai_pagecount; y++)//抽取详单数据
            {
                
                Temp = webBrowser1.Url.ToString() + "&pageSize=10&pageNo="+y+"";
               this.webBrowser1.Navigate("Temp");// webBrowser1.Url = new Uri(Temp);这样也不能跳转
                stremreader = new StreamReader(webBrowser1.DocumentStream, encoding);
                Temp = stremreader.ReadToEnd();
                 }现在的问题是,webBrowser 不能跳转页面。。

解决方案 »

  1.   

    你应该这样!
    this.webBrowser1.Navigate(Temp)
    而不是
    this.webBrowser1.Navigate("Temp")
      

  2.   

    LZ将TEMP变量当常量使用了
    this.webBrowser1.Navigate("Temp");
      

  3.   

    尽胡乱写。在for循环中用这些句子,无异于自杀。你从逻辑上能走通?????this.webBrowser1.Navigate("Temp");//能跳转见鬼Temp = stremreader.ReadToEnd();//能读到见鬼
      

  4.   

    你都不知道this.webBrowser1.Navigate(Temp);是需要时间执行的,写在for循环中能出来见鬼了Temp = stremreader.ReadToEnd();这句要等到内容加载完成才能读到,你直接就来冲刺
    .net的那些个委托算是委屈了
      

  5.   


    不一定能用,自己再试
        for (int y = 1; y <= Detai_pagecount; y++)//抽取详单数据
                {                string Temp = webBrowser1.Url.ToString() + "&pageSize=10&pageNo=" + y + "";
                    this.webBrowser1.Navigate(Temp);// webBrowser1.Url = new Uri(Temp);这样也不能跳转                while (!webBrowser1.IsBusy)
                    {
                        Application.DoEvents();
                    }                MessageBox.Show(webBrowser1.DocumentText);
                    stremreader = new StreamReader(webBrowser1.DocumentStream, encoding);
                    Temp = stremreader.ReadToEnd();
                }
      

  6.   

    我不是大师!WebBrowser wb;
    wb.DocumentCompleted+=new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);
    void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {
       WebBrowser wb=(WebBrowser)sender;
       if (wb.ReadyState != WebBrowserReadyState.Complete) return;
       //在这里读webBrowser1.DocumentStream的内容
       //在这里更改url
    }
      

  7.   

    将10楼的while (!webBrowser1.IsBusy)
                    {
                        Application.DoEvents();
                    }改成
           while (MyBrowser.ReadyState != WebBrowserReadyState.Complete)
           { 
                Application.DoEvents(); 
           }
    试试
      

  8.   

    无论是用while (!webBrowser1.IsBusy)还是用MyBrowser.ReadyState != WebBrowserReadyState.Complete最算是用webBrowser1_DocumentCompleted,都有可能出问题,最好的方法还是用HttpWebRequest
      

  9.   

    现在问题是,我对这个控件的URL根本就改不了 for (int y = 1; y <= Detai_pagecount; y++)//抽取详单数据
                {                string Temp = webBrowser1.Url.ToString() + "&pageSize=10&pageNo=" + y + "";
                    this.webBrowser1.Navigate(Temp);// webBrowser1.Url = new Uri(Temp);这样也不能跳转就在这里 再看 webBrowser1.Url.ToString() 也不是我更改过后的。
      

  10.   

    webBrowser1.Navigate(Temp);这个语句执行过后仍然webrowser1.url不是我指定的TEMP
      

  11.   

    while (browser.ReadyState != WebBrowserReadyState.Complete) 

                        Application.DoEvents(); 
    } bool loading = true;  
    string html = string.Empty; 
    WebBrowser browser = new WebBrowser(); 
    public void GetHtml(string[] urls) 
            {            
                browser.Navigated += new WebBrowserNavigatedEventHandler(browser_Navigated); 
                foreach (string url in urls) 
                { 
                    loading = true;  
                    browser.Navigate(url); 
                    while(loading) 
                    { 
                        Application.DoEvents(); 
                    } 
                } 
            } 
            void browser_Navigated(object sender, WebBrowserNavigatedEventArgs e) 
            { 
                html = browser.DocumentText;  
                loading = false; 
            }