Visual Basic Foro
Programación => Visual Basic .NET / C# => Mensaje iniciado por: aedEric en Mayo 27, 2014, 01:44:42 am
-
hola buenas noches estoy empezando a utilizar net 2012, ya he logrado hacer consultas, he realizado ABM con firebird, sólo lo habia hecho desde un unico form donde estuve testeando, ahora al agregar un nuevo form(2) y agrgar contoles como DTP, Cbo, Txt y al seleccionar una fecha en el Dtp al cargar el Cbo con items y al agrgar datos a la caja de texto, me percate que al cerrar el form2 con
me.close() y volverlo a mostrar me vuelve a mostrar el item seleccionado anteriormente en el Cbo el Dtp muestra la fecha seleccionada anteriormente y la caja de texto muestra el dato introducido, es como si nunca se ubiera cerrado el form,
mi pregunta es normal esto?
tengo que limpiar los controles a iniciar el form?
o que estoy haciendo mal ?
aqui selecciono una fecha introduzco un dato en el textbox y selecciono un item del combo
(http://i59.tinypic.com/w0hp2x.jpg)
aqui cierro el form2
(http://i57.tinypic.com/2ps0wh3.jpg)
aqui muestro el form2 de nuevo y veo que los datos se muestran como si no hubiera cerrado jamas el form
Form2.ShowDialog()(http://i58.tinypic.com/1zb713n.jpg)
de hecho el combo me duplica los items no se limpia al cerrar el form
(http://i57.tinypic.com/4ke1dd.jpg)
de antemano agradecere sus opiniones y sugerencias muchas gracias
-
En realidad estas utilizando la misma instancia del formulario, por eso se muestran las cosas tal como están (es para que lo puedas usar "después" de que se cerro)
Lo que deberías hacer es crear una instancia nueva del form que llamas y cuando se cierre destruirlo.
Algo así
Private Sub Button1_click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
Dim form as Form2
form = New Form2() ' Esto lo inicializa
form.ShowDialog() ' Aca seguro se carga el "Load", creo...
' Aca usarias el form. para obtener lo que haya puesto el usuario
form.Dispose() ' Esto lo "borra" de la memoria una vez que se cerro
End Sub
Y así siempre tendrás una nueva instancia y siempre se mostrará el form como nuevo
-
;D hola Raul muchas gracias saludos
tema solucionado