如何在c#浏览器中更改选项卡页面时更改favicon?
我正在用c#创建一个浏览器。我想根据浏览器地址在每个选项卡页面中添加favicon。我有下面的代码返回我当前地址的favicon如何在c#浏览器中更改选项卡页面时更改favicon?,c#,tabcontrol,favicon,C#,Tabcontrol,Favicon,我正在用c#创建一个浏览器。我想根据浏览器地址在每个选项卡页面中添加favicon。我有下面的代码返回我当前地址的favicon WebClient wc = new WebClient(); MemoryStream memorystream = new MemoryStream(wc.DownloadData("http://" + new Uri(getCurrentBrowser().Address.ToString()).Host + "/favicon.ico")); Icon ic
WebClient wc = new WebClient();
MemoryStream memorystream = new MemoryStream(wc.DownloadData("http://" + new Uri(getCurrentBrowser().Address.ToString()).Host + "/favicon.ico"));
Icon icon = new Icon(memorystream);
imageList.Images.Add(icon.ToBitmap());
tabControl.SelectedTab.ImageIndex = 0; // sets favicon in current tab
最后一行代码的问题。如何为不同的选项卡设置不同的favicon?我如何跟踪哪个favicon属于哪个选项卡?嗯,我花了一些时间。但我明白了。对于任何面临同样问题的人来说,这里有一个解决方案
public void favicon()
{
WebClient wc = new WebClient();
MemoryStream memorystream = new MemoryStream(wc.DownloadData("http://" + new Uri(getCurrentBrowser().Address.ToString()).Host + "/favicon.ico"));
Icon icon = new Icon(memorystream);
string i = Convert.ToString(myimg.Images.Count);
myimg.Images.Add(i, icon.ToBitmap());
tabControl.ImageList = myimg;
tabControl.SelectedTab.ImageIndex = myimg.Images.Count - 1;
}
在浏览器标题更改方法中调用它。和getCurrentBrowser()
返回当前浏览器。代码如下:
// get current browser
public ChromiumWebBrowser getCurrentBrowser()
{
return (ChromiumWebBrowser)tabControl.SelectedTab.Controls[0];
}