MDI 子窗体不显示
MDI Child Form not Displaying
我有一个 MDI 子窗体 (frmReview),我打算使用以下代码在我的最大化父窗体上显示它:
Public Sub frmTransport_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
'keyboard shortcuts
If e.KeyCode = Keys.F1 Then LaunchManual()
If e.Control Then
If e.KeyValue = Keys.R Then
Me.WindowState = FormWindowState.Maximized
Dim review As New frmReview
review.MdiParent = Me
review.Location = New Point(1175, 0)
review.BringToFront()
review.Show()
End If
...
...
End Sub
点 (1175, 0) 是 TabControl 与 Yellow mdi Container 相遇的右上角。父表单的 isMdiContainer 属性 设置为 True 并且当我 运行 此代码时 frmReview 的加载事件确实触发,但我没有看到子表单:
在我的另一个程序中,我使用相同的过程来显示 MDI 子窗体并且工作正常。关于为什么会发生这种情况有什么建议吗?
提前致谢!
如果要在右上角显示表格,用这个
Dim mdiClient = Me.Controls.OfType(Of MdiClient).FirstOrDefault()
Me.WindowState = FormWindowState.Maximized
Dim review As New frmReview
review.MdiParent = Me
review.BringToFront()
review.Show()
' order of Show() call changed so review has a size
review.Location = New Point(mdiClient.Size.Width - review.Width, 0)
我有一个 MDI 子窗体 (frmReview),我打算使用以下代码在我的最大化父窗体上显示它:
Public Sub frmTransport_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
'keyboard shortcuts
If e.KeyCode = Keys.F1 Then LaunchManual()
If e.Control Then
If e.KeyValue = Keys.R Then
Me.WindowState = FormWindowState.Maximized
Dim review As New frmReview
review.MdiParent = Me
review.Location = New Point(1175, 0)
review.BringToFront()
review.Show()
End If
...
...
End Sub
点 (1175, 0) 是 TabControl 与 Yellow mdi Container 相遇的右上角。父表单的 isMdiContainer 属性 设置为 True 并且当我 运行 此代码时 frmReview 的加载事件确实触发,但我没有看到子表单:
在我的另一个程序中,我使用相同的过程来显示 MDI 子窗体并且工作正常。关于为什么会发生这种情况有什么建议吗?
提前致谢!
如果要在右上角显示表格,用这个
Dim mdiClient = Me.Controls.OfType(Of MdiClient).FirstOrDefault()
Me.WindowState = FormWindowState.Maximized
Dim review As New frmReview
review.MdiParent = Me
review.BringToFront()
review.Show()
' order of Show() call changed so review has a size
review.Location = New Point(mdiClient.Size.Width - review.Width, 0)