browser1の target="blank"をbrowser2へ表示


にも  2010-11-08 18:18:54  No: 147203  IP: [192.*.*.*]

VB2008 XP or VISTA

formに二つのWEBbrowser  (browser1  browser2)を配置しています

browser1のHTMLでリンクがtarget="blank"になっている場合IEなどが
立ち上がるのでbrowser2に表示されるようにしたいです。

とくにタブブラウザを作りたいという訳ではなく
単にIEが立ち上がるのを防ぎたいというわけなのですが

方法を宜しくお願いします。

編集 削除
YAS  2010-11-10 00:16:53  No: 147204  IP: [192.*.*.*]

WebBrowserコントロールにNewWindow2イベントを実装してから,
NewWindow2イベントで次のようにします。

    Private Sub Browser_NewWindow2(ByVal sender As Object, ByVal e As WebBrowserNewWindow2EventArgs)
        e.ppDisp = Me.Browser2.Application
        Me.Browser2.RegisterAsBrowser = True
    End Sub

編集 削除
VBレスキュー(花ちゃん)  URL  2010-11-18 11:02:30  No: 147205  IP: [192.*.*.*]

>browser1のHTMLでリンクがtarget="blank"になっている場合IEなどが
>立ち上がるのでbrowser2に表示されるようにしたいです。

>とくにタブブラウザを作りたいという訳ではなく
>単にIEが立ち上がるのを防ぎたいというわけなのですが

であれば、複雑な事をしなくても下記でもいいのではないでしょうか?

Private Sub WebBrowser1_NewWindow(ByVal sender As Object, _
            ByVal e As System.ComponentModel.CancelEventArgs) Handles WebBrowser1.NewWindow
Try
   e.Cancel = True
   Dim URLNewWindow As String = WebBrowser1.StatusText
   If URLNewWindow.Substring(0, 4) = "http" Then
      WebBrowser2.Navigate(URLNewWindow)
   End If
Catch ex As Exception
   MessageBox.Show(ex.Message)
End Try

End Sub

編集 削除