打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
MOX.cc [vb.net中webBrowser控件的问题?如何使弹出的网页在 本身 w...

「vb.net中webBrowser控件的问题?如何使弹出的网页在 本身 webBrowser1 里运行?」

日期:2010-5-6

vb.net中webBrowser控件的问题,如何使弹出的网页在 本身 webBrowser1 里运行?
就是本来在 webBrowser1 已经打开一个网页了 。点了那个网页的链接后, 新的网页是 从IE 弹出来的 。我想 在原来的 webBrowser1 里显示 新的网页 . 具体怎么操作?

答案一(通过NewWindow事件处理):
Dim WithEvents Web_V1 As SHDocVwCtl.WebBrowser_V1
Private Sub Form_Load()
Set Web_V1 = WebBrowser1.Object
WebBrowser1.Navigate "http://www.163.com"
End Sub
Private Sub Web_V1_NewWindow(ByVal URL As String, ByVal Flags As Long, ByVal TargetFrameName As String, PostData As Variant, ByVal Headers As String, Processed As Boolean)
Processed = True
WebBrowser1.Navigate URL
End Sub


webBrowser控件里有个叫NewWindow的事件;
private void webBrowser1_NewWindow(object sender, CancelEventArgs e)
{ e.Cancel = true;
webBrowser1.Navigate(this.webBrowser1.StatusText)
}
但是,你的做法我觉得不太可行,建议做想IE7那样的多选择卡,利用tabControl和webBrowser控件,就是如果是转页当然都在本身的webBrowser连接拉,但是是弹出新窗口的话,就临时生成一个tabControl的tabPage,和webBrowser,把连接赋予临时webBrowser.
具体流程:
webBrowser弹出-拦截弹出窗口-获取连接-生成临时webBrowser-把连接赋予临时webBrowser.部分代码;
private void webBrowser1_NewWindow(object sender, CancelEventArgs e)
{
e.Cancel = true;
WebBrowser Lianjie = (WebBrowser)sender;
TabPage xin = new TabPage();
tabControl1.TabPages.Add(xin);
WebBrowser xi = new WebBrowser();
xi.Dock = System.Windows.Forms.DockStyle.Fill;
xin.Controls.Add(xi);
xi.Navigate(Lianjie.StatusText);
xi.NewWindow += new CancelEventHandler(webBrowser1_NewWindow); xi.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(xi_DocumentCompleted);
tabControl1.SelectedTab = xin;
}

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
如何把网页上的图片导入VB图片框中并显示出来
问一个SHDocVwCtl.WebBrowser的问题
VB关于webbrowser相关操作大全
IE webbrowser技巧集
webbrowser控件屏蔽网页错误
监听WPF的WebBrowser控件弹出新窗口的事件
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服