请帮我将这段c改成vb.net代码
(this.webbrowser1.activeXInstance As SHDocVw.WebBrowser).NewWindiw2+=New SHDocVw.DWebBrowserEvents2_NewWindow2EventHandler(Form1_NewWindow2)
这句用vb.net怎么写?
[最优解释]
2楼的对,这句是C# 给webbrowser加了一个newwindow的事件。
非要写的话 如下:
Private Sub WebBrowser1_NewWindow(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles WebBrowser1.NewWindow
e.Cancel = True
DirectCast(WebBrowser1.ActiveXInstance, SHDocVw.WebBrowser).RegisterAsBrowser = True
Dim urlNew As String = sender.Document.ActiveElement.GetAttribute("href")
Form1.WebBrowser1.Navigate(urlNew)
Form1.Show()
End Sub
[其他解释]
dim web= DirectCast(Me.webbrowser1.activeXInstance, SHDocVw.WebBrowser);
AddHandler web.NewWindiw2,New SHDocVw.DWebBrowserEvents2_NewWindow2EventHandler(Form1_NewWindow2)
[其他解释]
选中窗体上的WebBrowser控件,双击,在事件列表中选择NewWindow,然后开始写你的代码即可。
[其他解释]
你确认你没有抄错?
[其他解释]
该回复于2012-08-30 08:29:39被版主删除
[其他解释]
.net自带的web控件是没有NewWindow2事件的
需要引用一个浏览器的COM才会有
[其他解释]
需要引用shdocvw.dll
[其他解释]
原文如下:
//在新Form中的WebBrowser中打开
(this.webBrowser1.ActiveXInstance as SHDocVw.WebBrowser).NewWindow2 += new SHDocVw.DWebBrowserEvents2_NewWindow2EventHandler(Form1_NewWindow2)
应该是没写错。
[其他解释]
感谢,受益非浅,结贴了。