2013-10-01 86 views
-2

我已经找到了错误的HREF所以请帮我如何在新窗口中打开动态WebBrowser链接地址?

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.

+1

什么是错误?你有没有任何堆栈跟踪来分析?另外,这是vb.net,**它不是Java,也不是PHP和C#** –

+2

为什么地球上有人完全控制自己的思想,将它标记为'Java'? –

+0

@RohitJain因为人* * = \ –

回答

0

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

+0

的副本所以,我能做些什么?请给我任何想法? 感谢您的建议 –

+0

@PinalMishra,[这个答案](http://stackoverflow.com/a/6473442/1768303)解释了如何完成你所要求的细节。你只需要将它从C#转换为VB.NET。使用'ieframe.dll'而不是'shdocvw.dll'来添加引用。 – Noseratio

+0

嘿, 有没有人有任何想法如何打开新窗口,点击任何动态链接,我的问题平台是VB.NET,还记得新窗口不是Internet Explorer窗口或任何其他浏览器 –

0

处理的Navigating事件。例如:

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

感谢它帮助完整!!!!!! –

相关问题