我正在尝试通过在一行中创建Public Sub调用来减少代码行。但是form.MdiParent = Me会生成错误
frmParatemers是一个Mdi儿童形式。 frmMain是MDI父表格。
来自frmMain表格
Dim MyCtrl As MenuClickOperations
MyCtrl.showChildDialog(New frmParameters)
这是我的Class MenuClickOperations
Public Sub showChildDialog(ByVal form As Form)
Dim form2 As Form
For Each form2 In frmMain.MdiChildren
form2.Close()
Next
form.StartPosition = FormStartPosition.CenterScreen
form.MinimizeBox = False
form.MaximizeBox = False
form.MdiParent = Me
form.Show()
End Sub
帮帮我..谢谢
答案 0 :(得分:1)
您应该将form.MdiParent = Me
替换为form.MdiParent = formInstance
。您可以使用frmMain
或frmMain的实例(如果不同)。如果从frmMain调用showChildDialog,则可以在调用中使用Me
将frmMain实例作为参数传递。
答案 1 :(得分:0)
Dim MyCtrl As MenuClickOperations
MyCtrl.showChildDialog(New frmParameters, Me)
这是我的Class MenuClickOperations
Public Sub showChildDialog(ByVal form As Form, ByVal Itself As Control)
Dim form2 As Form
For Each form2 In frmMain.MdiChildren
form2.Close()
Next
form.StartPosition = FormStartPosition.CenterScreen
form.MinimizeBox = False
form.MaximizeBox = False
form.MdiParent = Itself
form.Show()
End Sub