Foros del Web » Programación para mayores de 30 ;) » .NET »

Windows Form en .Net

Estas en el tema de Windows Form en .Net en el foro de .NET en Foros del Web. Saludos gentita, tengo un windows form, en el load carga los datos, cuendo clikeo en nuevo se limpian los text, e ingreso datos luego clikeo ...
  #1 (permalink)  
Antiguo 08/12/2010, 09:15
Avatar de frankjoel86  
Fecha de Ingreso: noviembre-2008
Ubicación: Ica
Mensajes: 295
Antigüedad: 15 años, 5 meses
Puntos: 0
Windows Form en .Net

Saludos gentita,
tengo un windows form, en el load carga los datos, cuendo clikeo en nuevo se limpian los text, e ingreso datos luego clikeo en guardar, y procesa los datos bien, pero en el windows form no se muestran los datos, a menos que cierre y vuelv abrir el windows form.

Eh intentando cargar los datos en el evento activate, pero se duplican,

Se agradece la respuesta.
__________________
www.basritours.com
Agencia de turismo en Ica.
  #2 (permalink)  
Antiguo 08/12/2010, 09:58
Avatar de Hanstoo  
Fecha de Ingreso: julio-2010
Mensajes: 74
Antigüedad: 13 años, 9 meses
Puntos: 1
Respuesta: Windows Form en .Net

el codigo que pones en el load, ponlo tambien despues de guardar
  #3 (permalink)  
Antiguo 08/12/2010, 10:28
Avatar de mvazquez  
Fecha de Ingreso: octubre-2004
Ubicación: Monterrey - México
Mensajes: 875
Antigüedad: 19 años, 6 meses
Puntos: 8
Respuesta: Windows Form en .Net

Hola, eso pasa porque estas instanciando el formulario varias veces, cada que tu lo instancias crea nuevamente los controles por lo tanto los crea limpios.

Te paso la solución:
Todo esto va en el formulario que abreres desde otro o desde un MDI.

Primero create una instancia:
Código:
private static frmNombreDeFormulario frmInstance = null;
Después coloca este código en alguna parte de tu pantalla:
Este codigo nos sirve para que el objeto en este caso la pantalla no se instancie mas de una vez, es decir si ya esta abierta y con datos ya no la vuelva a cargar.
Código:
public static frmNombreDeFormulario Instance(string strConn)
{
    if (((frmInstance == null) || (frmInstance.IsDisposed == true)))
    {
        frmInstance = new frmNombreDeFormulario ();
    }
    frmInstance.BringToFront();
    return frmInstance;
}
y por ultimo cuando lo vallas a abrir haslo asi:
Código:
frmNombreDeFormulario  _frmNombreDeFormulario  = null;
_frmNombreDeFormulario = frmNombreDeFormulario.Instance();
_frmNombreDeFormulario.Show;
Espero que te sea de utilidad.
__________________
http://vazquezvega.wordpress.com/
"La paciencia nos da el privilegio de compartir el refrescante fruto de Dios con los demás."
  #4 (permalink)  
Antiguo 08/12/2010, 10:56
Avatar de Noa_  
Fecha de Ingreso: diciembre-2010
Ubicación: El Oceano de Sus Ojos ..☺
Mensajes: 132
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Windows Form en .Net

Puedes crear un metodo cargar y asi resultaria mas facil
  #5 (permalink)  
Antiguo 08/12/2010, 13:51
Avatar de SDEK  
Fecha de Ingreso: diciembre-2009
Ubicación: MX
Mensajes: 156
Antigüedad: 14 años, 3 meses
Puntos: 8
Respuesta: Windows Form en .Net

Hola,

Después de insertar los datos con el botón guardar, realiza una consulta a esos datos y asigna cada dato a los controles y recuerda hacer el databinding correspondiente.

Tal vez quieras ver el siguiente link:


http://www.bluevisionsoftware.com/WebSite/Books/0972317929/Ch06.pdf
__________________
Tecnologías de la Información
Karel Priego
| @karelpriego
  #6 (permalink)  
Antiguo 12/12/2010, 11:31
Avatar de frankjoel86  
Fecha de Ingreso: noviembre-2008
Ubicación: Ica
Mensajes: 295
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Windows Form en .Net

alguna otra sugerencia.. . e intentado limpiar la grilla despues de guardar, con Gridview1.clear, y nuevamente cargar los datos, pero igual se duplican
__________________
www.basritours.com
Agencia de turismo en Ica.

Etiquetas: windows, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:03.