![](/img/trans.png)
[英]Opening Mdi Parent as an Object won't let open Mdi Child form from another Mdi Child Form in VB.Net
[英]How Can I Open MDI Child From Another MDI Child At Fullscreen - Inside Parent Form
我正在使用MDI應用程序,我想知道在全屏主窗口中打開子窗體的子窗體的最佳方法是什么? 其中一些子窗體是從實例創建的,因此我不知道每次打開實例時都如何引用父窗體。
例如,我有我的主要父母形式(frmMain)。 然后,我使用以下代碼打開子窗體(Form2):
frmMain:
Dim frm As New Form2
frm.MdiParent = Me
frm.WindowState = FormWindowState.Maximized
frm.Show()
表格2:
Private Sub frmAssetTracker_Load(sender As Object, e As EventArgs) Handles MyBase.Load
fMain = DirectCast(Me.MdiParent, frmMain)
Me.MaximizeBox = False
Me.WindowState = FormWindowState.Normal
Me.WindowState = FormWindowState.Maximized
End Sub
這可以正常工作,並且在父表單中給了我一個全屏顯示的孩子。 但是,如何在全屏模式下打開Form2的子級,依此類推?
那么,如何使用frmMain作為父級從Form2打開Form3?
更新我的frmMain在窗口頂部有一個停靠的元素,可為整個應用程序提供按鈕欄。 當我使用下面的代碼從“父級”打開子級表單時,它將最大化停靠元素周圍的表單。 但是,當我嘗試打開子窗體的子窗體時,它會在窗體從正常狀態變為最大化狀態時產生“跳躍”效果。 如果刪除Me.WindowState = FormWindowState.Normal
,則子窗體位於父窗體的停靠元素的后面。
嘗試在Form2中遵循代碼
Dim frm As New Form3
frm.MdiParent = Me.MdiParent
frm.WindowState = FormWindowState.Maximized
frm.Dock=DockStyle.Fill
frm.Show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.