希望有人能幫助我。我有兩個單獨但相關的表單,其中一個包含WebBrowser控件。用戶填寫一些信息表格1和點擊一個按鈕用下面的代碼:VB.Net WebBrowser導航只能工作一次
If Form2Shown = False Then
Dim memoscreen As New Form2
Form2Ref = memoscreen
memoscreen.show()
Form2Shown = True
memoscreen.TopMost = OptionOnTop
Else
Dim memoscreen As Form2
memoscreen = Form2Ref
memoscreen.TopMost = OptionOnTop
memoscreen.QuickRefresh()
End If
的QuickRefresh子在窗體2是用於導航的方法。這就是所謂的兩個表單時在上面的代碼作爲手動加載,以及:
Public Sub QuickRefresh()
Dim HM As Form1
HM = Form1Ref
Me.Text = "retrieving information..."
Me.AxWebBrowser1.Navigate("SomeValidURL")
HM.Focus()
HM.SetHugoFocus()
End Sub
時遇到的問題是,在第一時間QuickRefresh被調用(即,當窗體2被裝載)的導航是成功並且頁面顯示正常。如果我再次單擊Form1上的按鈕,頁面不會更改。文本屬性和窗口焦點確實會改變,所以我知道該方法正在發射。
有些事情我已經試過/檢查:
- AllowNavigation設置爲True WebBrowser控件上
- 試過循環,而瀏覽器是繁忙而調用Application.DoEvents()
任何建議,將不勝感激。謝謝。
重溫這一點,我注意到它已經開始工作,它仍然沒有工作在一些用戶的機器不過,我並沒有改變任何代碼,但我沒有升級到IE9 IE8。我通過搜索確認WebBrowser控件受IE設置的影響,但我不確定哪一個會導致這種行爲。任何有關它可能是哪種設置的見解? – Straadin 2012-03-29 14:35:26