我有一个问题隐藏在mdi父窗体中的最大化状态下的mdi子窗体的标题栏。vb.net mdi儿童标题栏不隐藏
下面是我在设计&运行时:我的MDI子窗体的
这是新的():
Public Sub New(ByRef pParent As Form)
MyBase.New()
Me.MdiParent = pParent
fParent = pParent
Me.Text = ""
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
Me.WindowState = FormWindowState.Normal
Me.MinimizeBox = False
Me.MaximizeBox = False
Me.ControlBox = False
Me.ShowIcon = False
Me.ShowInTaskbar = False
Me.SizeGripStyle = Windows.Forms.SizeGripStyle.Hide
Me.Dock = DockStyle.Fill
End Sub
我试过FormWindowState.Maximized
和DockStyle.None
代替,但结果是一样的。
在父容器,从一个孩子变成另一个我使用此功能:
Protected Sub SetActiveScreen(ByVal pChildForm As tWizardForm)
If pChildForm Is Nothing Then Exit Sub
If fActiveScreen Is pChildForm Then Exit Sub
Dim hg As New tHourglass
Try
fActiveScreen = pChildForm
fActiveScreen.Show()
fActiveScreen.BringToFront()
For Each aForm In MdiChildren
If aForm IsNot fActiveScreen Then aForm.Hide()
Next
fActiveScreen.Execute()
UpdateCaption()
Finally
hg.Dispose()
End Try
End Sub
在设计我已经设置了parent属性IsMdiContainer = True
。
我哪里错了,或者我错过了什么? 加上这种儿童标题栏上的双按钮真的很奇怪。当我点击其中一个最大化按钮时,我会得到相同的结果: 。
生成的标题栏按钮不能被点击。
谢谢你的帮助!
显然你不喜欢MDI。所以不要使用它。该“子窗体”可以是您所停靠的用户控件。 –
@Hans Passant这可能实际上是最好的事情......因为我永远不会有几个“孩子形式”同时显示,我希望他们总是最大化。感谢您指出我明显看不到的东西! – Joel
我在C#.NET中遇到了同样的问题.. – displayname