问一个关于MDI子窗体的问题,哪位兄弟指点一下啊
做了一个主MDI窗体,然后用菜单调用子窗体,没有问题。菜单中加上如下语句:
Dim infoAs New CustomerAdd
info.MdiParent = Me
info.TopLevel = False
info.WindowState = FormWindowState.Maximized
info.Show()
这样可以打开子窗体,而且显示在主窗体中。但我在这个子窗体上想加上一个按钮,让它再打开另一个子窗体,而且也在主的MDI窗体中,仍然用上面的代码就会出现问题,我估计可能是这个info.MdiParent = Me 中的ME出问题了,因为MDI主窗体不是第一个子窗体。但如何才能实现此功能呢?
谢谢!
[解决办法]
在CustomerAdd窗体中定义事件 Public Event addnewfrm As EventHandler,当点击button时写代码 RaiseEvent addnewfrm(Me, Nothing)。
在主窗体中
Dim info As New CustomerAdd
info.MdiParent = Me
info.TopLevel = False
info.WindowState = FormWindowState.Maximized
info.Show()
addhandler info.addnewfrm,addressof infoonaddnewfrm‘新添的
Sub cfrmonaddnewfrm(ByVal s As Object, ByVal e As EventArgs)
Dim info As New CustomerAdd
info.MdiParent = Me
info.TopLevel = False
info.WindowState = FormWindowState.Maximized
info.Show()
addhandler info.addnewfrm,addressof infoonaddnewfrm
End Sub
调试过可以用的!
[解决办法]
info.MdiParent = Me.MdiParent