WebBrowser,右键单击链接以打开新选项卡

时间:2015-08-20 20:24:42

标签: vb.net webbrowser-control

我已经制作了这个代码来打开新的TAB,如果我点击"右键单击"在链接上然后我选择"在新窗口中打开"

它在我的浏览器中打开了一个新的TAB,但同时也会打开Internet Explorer。

我只想让IE静音,或者使用新的标签选项而不是灰色来使用它。我不想制作我的自定义菜单,我相信有一个解决方案。

我在这里搜索了我的问题,这是一个不同的问题,所以请不要重复

这是我用来制作它的作品

Private Sub WebBrowser1_NewWindow1(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles WebBrowser1.NewWindow
        Dim Browser As New WebBrowser
        TabControl1.TabPages.Add("New Page")
        TabControl1.SelectTab(int)
        Browser.Name = "Web Browser"
        Browser.Dock = DockStyle.Fill
        TabControl1.SelectedTab.Controls.Add(Browser)
        AddHandler Browser.ProgressChanged, AddressOf Loading
        AddHandler Browser.DocumentCompleted, AddressOf Done
        int = int + 1
    End Sub

1 个答案:

答案 0 :(得分:0)

我解决了。 很简单,这个命令行会使IE静默。

e.Cancel = True

您无需构建其他菜单并关闭IE的主菜单,然后再次构建所有项目。

这是单击“右键单击它们”时打开链接的最终代码,将在新选项卡中打开

 Private Sub WebBrowser1_NewWindow1(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles WebBrowser1.NewWindow
   e.Cancel = True

    Dim thiselement As HtmlElement = WebBrowser1.Document.ActiveElement
    Dim Browser As New WebBrowser
    Dim targeturl As String = thiselement.GetAttribute("href")
    With Browser
        .Navigate(targeturl)
        .Dock = DockStyle.Fill
    End With

    TabControl1.TabPages.Add(targeturl)
    TabControl1.SelectTab(int)
    TabControl1.SelectedTab.Controls.Add(Browser)
    AddHandler Browser.ProgressChanged, AddressOf Loading
    AddHandler Browser.DocumentCompleted, AddressOf Done
    int = int + 1

End Sub