【问题标题】:How to open dynamic WebBrowser link address in new window form?如何以新窗口形式打开动态 WebBrowser 链接地址?
【发布时间】:2013-10-07 03:54:34
【问题描述】:

我在href找到了错误,请帮助我

Private Sub WebBrowser1_NewWindow(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles WebBrowser1.NewWindow
    Dim thiselement As HtmlElement = WebBrowser1.Document.ActiveElement
    Dim targeturl As String = thiselement.GetAttribute("href") 
    e.Cancel = True
    Dim window As New Form1
    window.Show()
    window.WebBrowser1.Navigate(targeturl)
End Sub

在“href”处,我发现对象引用未设置为对象瞬间之类的错误。 我的代码在 vb.net 2010 中。

【问题讨论】:

  • 错误是什么?您有要分析的堆栈跟踪吗?另外,这是 vb.net,它不是 Java 也不是 PHP 也不是 C#
  • 为什么会有完全控制自己思想的人将此标记为Java
  • @RohitJain 因为人们可以 =\

标签: vb.net browser webbrowser-control


【解决方案1】:

WebBrowser1.Document.ActiveElement 正在返回 Nothing,因为没有活动元素。因此,当您尝试使用targeturl 时,您会收到此错误:Object reference not set to an instant of object

【讨论】:

  • @PinalMishra, this answer 详细解释了如何完全按照您的要求进行操作。您只需要将其从 C# 转换为 VB.NET。使用ieframe.dll 而不是shdocvw.dll 添加引用。
  • 嘿,有谁知道我如何在点击任何动态链接时打开新窗口,我的问题平台是 vb.net,还记得新窗口不是 Internet Explorer 窗口或任何其他浏览器
【解决方案2】:

处理Navigating 事件。示例:

webBrowser1.Navigating += Function(source, args) 
    Dim uriClicked = args.Uri
    ' Create your new form or do whatever you want to do here
End Function

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-01
    • 2015-10-04
    • 2013-06-10
    • 1970-01-01
    • 2011-10-19
    • 1970-01-01
    相关资源
    最近更新 更多