C#用webbrowser制作多页面浏览器

2024-12-26 15:44:01
推荐回答(4个)
回答1:

我有一个我自己做的你留邮箱我给你
关于你的问题,我不知道你注意没有tabpage有一个属性是用来储存当前获得焦点的那个页面的索引值的。你只要建立一个泛型的浏览器集合(用list)
List webNew = new List();//构造一个泛型列表来管理浏览器控件
关闭当前的tabpage 你可以这样:
this.webNew[tabControl1.SelectedIndex].Dispose ( );//析构当前浏览器
this.webNew.Remove ( this.webNew[tabControl1.SelectedIndex] );
tabControl1.TabPages[tabControl1.SelectedIndex].Dispose ( );//析构当前标签页
这样我们就能进行匿名处理这些个浏览器控件了
这个方法绝对可行我告诉你,因为我就这样做的。(现在只差最难的收藏夹了)
一定要用List,因为list是动态数组,它的索引时可变化的,如果你拿array来定义集合就糟糕了。。。

我有全套源码,留邮箱吧

回答2:

首先在窗体中添加一个combox和一个webbrowser,代码如下

初始化:

Code

前进浏览comboBox1.text代表的url

1  private void button1_Click(object sender, EventArgs e)
2        {
3            string url = comboBox1.Text.Trim();
4
5            webBrowser1.Navigate(url);
6        }

返回前一个浏览的网页

1//后退
2        private void button2_Click(object sender, EventArgs e)
3        {
4            webBrowser1.GoBack();
5
6        }

点击网页中的链接,不在启动IE,而是使用webbrowser继续浏览

Code4

//每次浏览网页后,combox_url中的文本变成当前网页的url

 private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)        
 {            
 comboBox1.Text = webBrowser1.Url.ToString();       
  }

回答3:

当你截获webBrowser1中点击的链接的时候
tabcontrol中添入tabpage并置为选中
在这个新tabpage中加入一个新的webBrowser并使其的
导航uri为你捕获的链接

回答4:

你写的太长 没仔细看
但是我想问题应该出在这里
你所使用的所有的tabpages都装载着同一个webBrowser1对吧
这样的话....
在你所打开的tabpage里不论那个转向,都会引起webBrowser1的变化对吧?
这样问题不是出来了么?

至于选中问题,直接tabcontrols.selectindex=tabControl1.TabPages.Count-1
这样就能搞定

关闭也是一样的做法,通过TabPages.Count遍历tabControl1.pages,我没关过pages
但是我十分肯定有这样的方法