Tengo un problema a la hora de abrir un formulario. El código que suelo
encontrar en internet para este fin es el siguiente:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As_
System.EventArgs) Handles Button1.Click
Dim formulario As New FormNuevo 'creo un objeto de la clase FormNuevo
formulario.Show() ' muestro el formulario haciendo uso del
método show
End sub
Para que al hacer clic en un determinado botón se abra el formulario. Sin
embargo, dado que el nuevo formulario no es modal, se puede volver al
formulario donde se encuentra el botón que permitió abrir el nuevo
formulario. Por lo que puedo abrir varios nuevos formularios con solo hacer
clic, es decir, cada vez que hago clic en el botón, abro un nuevo formulario,
uno tras otro, todos iguales.
Esto se debe a que cada vez que hago clic en el botón, creo un objeto de la
clase FormNuevo. He intentado declarar al nuevo formulario en las
declaraciones generales, pero cada vez que cierro el nuevo formulario e
intento volver a abrirlo me sale un error.
He logrado solucionar este problema haciendo uso del patrón Singleton para
que solo pueda crear una instancia de cada formulario que deseo abrir, pero
me parece que es mucha cosa para una tarea tan simple.
Espero que alguien pueda solucionar el problema que tengo. Gracias
Leer las respuestas