2017-08-06 81 views
-1


我正在使用WebBrowser組件構建WPF應用程序。
我在從WebBrowser獲取源URI時遇到問題。
我在這裏研究:https://msdn.microsoft.com/library/system.windows.controls.webbrowser.source.aspx並檢查過去的這個問題在這裏:Obtaining URL in WPF WebBrowser
然而,這並沒有幫助。 關於這個問題的國家答案使用WebBrowser.Source財產,我已經使用(browser是給我的WebBrowser組件名稱)browser.Source.ToString()但是,不管我怎麼努力,我不斷收到錯誤:從WebBrowser獲取源代碼WPF C#

System.NullReferenceException: 'Object reference not set to an instance of an object.' System.Windows.Controls.WebBrowser.Source.get returned null.

這裏一個代碼示例:

public LoginWindow() //Called when window is opened 
{ 
    InitializeComponent(); 
    browser.Navigating += Browser_Navigating; 
    Main.log(browser.Source.ToString()); 
} 
private void Browser_Navigating(object sender, System.Windows.Navigation.NavigatingCancelEventArgs e) 
    { 
     if (browser.Source.IsLoopback) 
     { 
      Main.log("Looped Back"); 
     } 
    } 


感謝您的幫助。

+0

是的,我有。源已經設置好了,工作正常。唯一的問題是獲取值Source屬性。 – ARC

+0

您需要發佈[最小有效完整示例](https://stackoverflow.com/help/mcve),以便我們提供幫助。實際上,創建MVCE通常會向您顯示問題。 –

+0

很確定我解釋得不錯,但我已經更新了這個問題。 – ARC

回答

1

它引發異常,因爲您尚未導航到任何頁面,所以源不可用。

Navigated事件中添加日誌記錄。

private void webBrowser_Navigated (object sender, NavigationEventArgs e) 
{ 
    Log (webBrowser.Source.AbsoluteUri); 
} 
+0

謝謝。不知道爲什麼其他人不得不讓這個答案如此困難。 – ARC