Dev Tools & Code
It's a good idea to enclose the functionality of your forms' and user controls' exposed methods with a conditional to ensure the form isn't disposed or disposing. Otherwise your code could potentially attempt to manipulate an object that is still around temporarily but in an uneditable state.
Here's an example.
Public Class MyForm
Friend Sub DoSomething()
If Not Me.IsDisposed AndAlso Not Me.Disposing Then
Debug.WriteLine("Safe to manipulate the form.")
End If
End Sub
End Class