2011-07-22 86 views
-1

嘿傢伙,我想從Form1中訪問窗口2,我用這個代碼..訪問Form1中Form2的距離問題,我需要一些幫助

MessageBox.Show(wb.name)這條線工作,我得到瀏覽器名稱在messagebox中,但是 wb.Navigate(「http://www.google.com」);此行不起作用

Form1 frm = new Form1(); 
     foreach (Control item in frm.Controls) 
     { 
      if (item is WebBrowser) 
      { 
       WebBrowser wb = (WebBrowser)item; 
       MessageBox.Show(wb.name) 
       wb.Navigate("http://www.google.com"); 
       this.Close(); 
      } 

     } 
+1

你爲什麼要通過形式的每一個控制迴路找到'WebBrowser'做什麼而不是僅僅使用WebBrowser的名字? – BoltClock

+0

我也使用過,同樣的問題:( – PsyGnosis

+0

請描述「這條線不工作」 –

回答

0

您可能想要查看WebBrowser對象的事件。您對this.Close()的調用可能是您在此處撤銷的。嘗試一個Thread.Sleep(10000);在this.Close()之前查看你的結果是什麼。

0

Navigate方法不會等待WebBrowser導航到特定頁面,但會立即返回,並且它會異步執行導航。該控件有一個名爲DocumentCompleted的事件,當Web瀏覽器真正導航到特定頁面時調用該事件。

你應該實現對DocumentCompleted事件的事件處理程序,並寫在這裏,你希望你的程序時,它定位到http://www.google.com