在MDI配置中以新形式打开WebBrowser。由于某种原因它开放了两次

时间:2011-05-11 16:49:18

标签: c# vb.net browser contextmenu

好的,这真的很奇怪。我向其他开发人员展示了这个问题,他也很难过。我们在VS 2008中使用VB.NET。

这是我的设置:

  • 我有DataGridView控件,有全行选择
  • 当您右键单击某行时,它会打开一个上下文菜单
  • 有一个菜单项可以在浏览器窗口中查看有关Intranet站点的更多信息,该窗口在我的应用程序中以MDI子窗体的形式打开。
  • 浏览器窗口是一个基本表单,其中WebBrowser控件停靠以填充整个表单
  • 浏览器窗口采用url字符串参数,该参数将发送到WebBrowser控件以导航到新页面

问题:

出于某种原因,当我选择打开新浏览器窗口的菜单项时,它会打开其中两个。

当我在Menuitem的MouseUp事件上设置断点时(我也尝试了具有相同结果的Click事件),它会按预期运行整个过程,当它到达{时{1}},它返回并再次重复整个End Sub事件方法!我不能为我的生活弄清楚为什么会这样。

菜单项的MouseUp事件:

MouseUp

浏览器表单:

Private Sub TestMenuItemIEClient_MouseUp(ByVal sender As Object, ByVal e As System.EventArgs) Handles TestMenuItemIEClient.MouseUp
    Dim clientID As String = TestGrid.SelectedRows(0).Cells("ClientID").Value
    Dim browser As Browser = New Browser("http://blah/client_view.aspx?clientid=" & clientID)
    browser.MdiParent = Main
    browser.Show()
End Sub ' <-- after this point, it goes back and repeats this whole event which creates a 2nd browser window

有什么想法吗?提前谢谢。

0 个答案:

没有答案