我在C#app中使用System.Windows.Controls.Webbrowser类。 我想知道文档标题是否有变化。
因此我会听LoadComplete事件并获得标题
public void webBrowser_LoadCompleted(object sender, NavigationEventArgs e)
{
dynamic doc = browser.Document;
setTitle(doc.Title);
}
现在的问题是,标题可能会在加载过程中发生变化。在这种情况下,LoadCompleted事件不会触发。 下一个问题是。我有一个html应用程序,在其中导航应用程序中的JavaScript函数。如果使用这些javascript链接,事件也不会触发。
我正在寻找像OnTitleChange from CHtmlView这样的事件(c ++) 是否有可能解决我的问题?
感谢您的帮助。
答案 0 :(得分:0)
WPF webbrowser不支持。
您可以使用Windows窗体互操作来显示Windows窗体webbrowser控件,然后订阅DocumentTitleChanged事件。
答案 1 :(得分:0)
这是我的工作代码:
System.Windows.Forms.WebBrowser browser = new System.Windows.Forms.WebBrowser();
browser.Navigate(URL);
browser.DocumentTitleChanged += new EventHandler(browser_DocumentTitleChanged);
WindowsFormsHost winFormsHost = new WindowsFormsHost();
winFormsHost.Child = browser;
AddChild(winFormsHost);
public void browser_DocumentTitleChanged(object sender, EventArgs e)
{
setTitle(browser.DocumentTitle);
}