In VB.Net you can show a form without crete an object reference before... vb.net do it to you, but, that "feature" is generating many problems, eg:
Public Class Form1
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Form3.Show()
End Sub
End Class
Public Class Form3
Inherits System.Windows.Forms.Form
End Class
Is there any way to disable this?
No there is no way to disable that. It is called the default instance. If you don't want to use it - don't use it. I recommend creating a new instance.
I looking for a solution to do the same and ran across this thread.
Seeing that there is no way to get rid of the default instance, and it would allow you to make the "whoops" of calling the form without an object reference, I just resorted to do this:
This forces you to create an object reference because it gets rid of the implicit Sub New, having only one constructor which requires a variable, which requires an object reference.
This trick works for me at least. I just thought I would just add it as a solution in case someone else runs into this thread for the same reason I did.