我们如何在父 MDI 窗口中排列子窗体?我可以从父菜单中调用并显示子窗体,但子窗体会弹出父窗体之外——我希望它实际上位于父窗体内部。我检查了 C# 和 VB.Net 解决方案,但它们都说得差不多,即尝试访问 LayoutMDI,例如此处:
http://msdn.microsoft.com/en-us/library/x9fhk181.aspx
问题是,我在哪里可以访问它?当我在我的 MDI 父级代码中时,无法识别 Me.LayoutMdi
。我应该在应用程序的哪一部分放置 Me.LayoutMDI
代码?
编辑
Me.LayoutMDI
代码毕竟在父级中起作用。我已经尝试了一段时间,但不知道哪里出错了。
但是,子级继续从父级中弹出。这是如何发生的图像。后面较宽的窗体是父窗体,带有 gridview 和两个按钮的窗体是弹出的新子窗体。我希望它在父项中弹出“已停靠”。
最佳答案
如果您的表单位于 MDI 父级“外部”,那么您很可能没有设置 MdiParent 属性:
Dim f As New Form
f.MdiParent = Me
f.Show()
在这个例子中,Me 是一个具有 IsMdiContainer = True
的表单,因此它可以承载子表单。
要重新安排子窗体布局,您只需从 MdiContainer 窗体调用该方法:
Me.LayoutMdi(MdiLayout.Cascade)
MdiLayout 枚举也有平铺和排列图标值。
关于vb.net - 如何在 VB.NET 中打开位于 MDI 父级中的子窗体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13533909/