从WebBrowser WPF C#获取源代码

时间:2017-08-06 00:01:00

标签: c# wpf


我正在使用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()但是,无论我尝试什么,我都会得到错误:

  

System.NullReferenceException:'对象引用未设置为对象的实例。'   System.Windows.Controls.WebBrowser.Source.get返回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");
        }
    }


谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

它会引发异常,因为您尚未导航到任何页面,因此源不可用。

Navigated事件中添加日志记录。

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