加载内容本身与是否子窗体没有关系。
创新互联主营雁江网站建设的网络公司,主营网站建设方案,app软件开发公司,雁江h5重庆小程序开发搭建,雁江网站营销推广欢迎雁江等地区企业咨询
请你检查一下你加载的内容是不是存在。
下面代码,不管是否子窗体,都是正常的:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ComboBox1.Items.Add("123")
ComboBox1.Items.Add("223")
ComboBox1.SelectedIndex = 0
End Sub
你可以下载附件参考一下!
直接添加一个MID父窗体或在已有窗体的属性中找到IsMDIContainer属性,然后设置为True,然后创建第二个窗体 ,需要加载子窗体的时候:
Dim NewMDIChild As New Form2
NewMDIChild.MdiParent = Me
NewMDIChild.Show()
Public Shared Sub CheckMDIChildForm(ByVal MDIForm As Windows.Forms.Form, ByVal MDIChildForm As Windows.Forms.Form, ByVal MDIChildFormName As String)
If MDIForm.MdiChildren.Length 1 Then
'如果没有任何一个MDI子窗体,则创该MDI子窗体的窗体实例
Dim MDIChildFrm As Windows.Forms.Form = MDIChildForm ' 定义MDI子窗体
MDIChildFrm.MdiParent = MDIForm '指定父窗体
MDIChildFrm.Show() '打开窗体
Exit Sub
Else
Dim x As Integer
Dim frmyn As Boolean
For x = 0 To (MDIForm.MdiChildren.Length) - 1
Dim tempChild As Windows.Forms.Form = CType(MDIForm.MdiChildren(x), Windows.Forms.Form)
If tempChild.Name = MDIChildFormName Then
'检测到有该MDI子窗体,设为激活 并退出循环
frmyn = True
tempChild.BringToFront()
Exit For
Else
frmyn = False
End If
Next
If Not frmyn Then
'在打开的窗体中没检测到则新建
Dim MDIChildFrm As Windows.Forms.Form = MDIChildForm ' 定义MDI子窗体
MDIChildFrm.MdiParent = MDIForm '指定父窗体
MDIChildFrm.Show() '打开窗体
End If
End If
End Sub
form窗体有一个属性是startposition,把它设置为centerscreen就是居中。
代码为
me.startposition
=
formstartposition.centerscreen。
如果是非要计算分辨率的话:
my.computer.screen.bounds.width
是分辨率中的宽度
my.computer.screen.bounds.height
是分辨率中的高度
那么
me.top
=
(my.computer.screen.bounds.height
-
me.height)
/
2
me.left
=
(my.computer.screen.bounds.width
-
me.width)
/
2
就是让窗体居中啦~