【发布时间】:2013-03-27 00:15:33
【问题描述】:
我在 TabControl 中创建了一个 Web 浏览器控件。我想将 TabItem 的 Header 设置为 Web 浏览器的文档标题。 我在 WebBrowser 的导航事件中使用了以下代码
dynamic doc = tabBrowser.Document; //tabBrowser is the name of WebBrowser Control
tab.Header = doc.Title; //tab is the name of the Tab Item
但是这段代码不能正常工作。标题仅针对少数站点更改。 如何将 tabItem 的 Header 设置为 Document 的 Title 值?
这是导航功能:
public void tabBrowser_Navigated(object sender, System.Windows.Navigation.NavigationEventArgs e)
{
urlTextBox.Text = tabBrowser.Source.ToString();
myHistory.addToHistory(tabBrowser.Source.ToString());
BookMarks.addBookmark(tabBrowser.Source.ToString());
dynamic doc = tabBrowser.Document;
tab.Header = doc.Title;
}
【问题讨论】:
-
您确定每次页面都完全呈现并加载了吗?请注意,任何动态更改其标题的网站也将无法运行,您能否提供一些周边代码?例如执行导航和处理导航事件的代码?
-
这里是导航函数
public void tabBrowser_Navigated(object sender, System.Windows.Navigation.NavigationEventArgs e) { urlTextBox.Text = tabBrowser.Source.ToString(); myHistory.addToHistory(tabBrowser.Source.ToString()); BookMarks.addBookmark(tabBrowser.Source.ToString()); dynamic doc = tabBrowser.Document; tab.Header = doc.Title; }
标签: c# wpf wpf-controls webbrowser-control tabcontrol