我正在使用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");
}
}
谢谢你的帮助。
答案 0 :(得分:1)
它会引发异常,因为您尚未导航到任何页面,因此源不可用。
在Navigated
事件中添加日志记录。
private void webBrowser_Navigated (object sender, NavigationEventArgs e)
{
Log (webBrowser.Source.AbsoluteUri);
}