在处置表单或用户控件之前

时间:2017-03-09 21:04:32

标签: vb.net

我有代码用于为表单和用户控件执行一些Dispose(下面):

Public Shared Sub DisposeUserControlControls(parent As Control)
        For ix As Integer = parent.Controls.Count - 1 To 0 Step -1
            Dim ctl = parent.Controls(ix)
            If (TypeOf ctl Is UserControl) Or (TypeOf ctl Is Form) Then
                ctl.Dispose()
            End If
        Next
    End Sub

但是对于我的某些表单或用户控件,我想在使用Dispose处理之前执行一些代码。在处理之前,是否有任何形式或用户控制获取信号以执行某些代码?我听说过关于实现IDisposable的事情。

其他问题:

据你说只在内部调用这个内容:

 MyBase.Dispose(disposing)

我注意到在课程设计师课程中,如下所示,附加检查是否处理... beisdes your line。问题是我应该还包括它还是MyBase.Dispose(disposing)足够jsut?顶部还包含属性。

'Form overrides dispose to clean up the component list.
        <System.Diagnostics.DebuggerNonUserCode()>
        Protected Overrides Sub Dispose(ByVal disposing As Boolean)
            Try
                If disposing AndAlso components IsNot Nothing Then
                    components.Dispose()
                End If
            Finally
                MyBase.Dispose(disposing)
            End Try
        End Sub

0 个答案:

没有答案