我尝试了Google上的所有选项。但是它们只显示form.Close或form.Hide每个循环。我还实现了以下相同的循环:-
(我正在将表单添加到面板(Panel_Details_Container)
For Each form_obj In Panel_Details_Container.Controls.OfType(Of Form).ToList()
form_obj.Close()
Next
Try
'-----------------------------------------------------------------------------------------------
Me.Cursor = Cursors.WaitCursor
'-----------------------------------------------------------------------------------------------
Dim Form_DE_Details_Obj As New Form_DE_Details()
'-----------------------------------------------------------------------------------------------
Form_DE_Details_Obj.ControlBox = False
Form_DE_Details_Obj.Text = String.Empty
'-----------------------------------------------------------------------------------------------
Form_DE_Details_Obj.TopLevel = False
'-----------------------------------------------------------------------------------------------
Form_DE_Details_Obj.TextBox_Selected_Unique_ID.Text = Selected_Unique_ID.ToString()
Form_DE_Details_Obj.TextBox_Selected_Imp_ID.Text = Selected_IMP_ID.ToString()
'-----------------------------------------------------------------------------------------------
Form_DE_Details_Obj.WindowState = FormWindowState.Normal
Form_DE_Details_Obj.StartPosition = FormStartPosition.WindowsDefaultLocation
'-----------------------------------------------------------------------------------------------
Me.Cursor = Cursors.Default
'-----------------------------------------------------------------------------------------------
Form_DE_Details_Obj.Visible = True
Panel_Details_Container.Controls.Add(Form_DE_Details_Obj)
Form_DE_Details_Obj.Show()
'-----------------------------------------------------------------------------------------------
Catch ex As Exception
MsgBox(ex.Message)
End Try
'-----------------------------------------------------------------------------------------------
Me.Cursor = Cursors.Default
'-----------------------------------------------------------------------------------------------
我的问题:-
1. .Close适用于所有控件较少的表单。
2.这种特殊形式的控件很多,每20行:-7个ComboBox,3个TextBox,3个复选框,1个按钮。那有什么记忆问题吗?关闭并立即重新加载表单实例,父表单会自动关闭吗?
3.我确认,只有通过顺利通过的其他表格,并且每当称为该表格的父表格都被关闭时,这个表格才是问题所在。
4.在标题中,我写了close / hide,因为我不知道父窗体是关闭还是隐藏。当父窗体关闭/不可见后,等待鼠标光标运行或断点处的进程在代码侧停止。但是父级以及新创建的表单都完全不可用。
(这些是我要放置的一些技巧,自整周以来我一直在尝试这些技巧)
代码用途:-
1.许多控件保存在一个窗体上。并在需要时适当
仅加载对该模块具有受限控件的表单。
2.由于将控件分为其他单独的形式,因此减少了很多内存。
我的解决方案已解决:-
1.已尝试。隐藏。但是,这每次都会重新加载一个新的表单对象实例,并且表单的新实例及其所有对象都在内存中。我通过在from_obj.Hide()处设置断点并每次在循环中添加新的表单实例计数来进行测试。
2.。处置也没有帮助。
3.我尝试了Application.DoEvents(检查它是否需要太多时间来关闭表单资源)。但是没有解决方案。
非常感谢大家。