none
Cerrar aplicacion y cerrar form RRS feed

  • Pregunta

  • Que tal amigos, les comento.. tengo dos form A y B, el flujo es el siguiente: la aplicación se abre en el form A ahora, el form A tiene un botón salir, el cual hace una validación. Si es verdad abre el Form B y se cierra A, y de ser falsa la validación el Botón salir de A cierra la aplicación, ahora me gustaría que al hacer click en X de la barra título del Form A se cierre la aplicación, use el evento form_closing  podemos decir que funciona, pero el problema ahora es que al hacer la validación en el boton salir del Form A (en el caso de ser verdad)  Abre el Form B y a la vez cierra toda la aplicación entiendo que es por el evento form_closing .. ahora no se como solucionarlo... espero me haya dejado entender.. XD

    private void btn_Salir_Click(object sender, EventArgs e)
            {
                if(cnsistema.verificar())
                {
                    Frm_Sis frmlog = new Frm_Sis();
                    frmlog.StartPosition = FormStartPosition.CenterScreen;
                    frmlog.Show();
                    this.Close();
                }
                else 
                {
                    Application.Exit();
                }
              
            }
    
     private void Frm_Inicio_FormClosing(object sender, FormClosingEventArgs e)
            {
                
                 Application.Exit();
            }

    • Editado Novatoj martes, 11 de diciembre de 2018 17:13
    martes, 11 de diciembre de 2018 16:16

Respuestas

Todas las respuestas

  • Hola, puedes mostrarnos el código que llevas implementado? Para poder ayudarte es necesario ver cómo has codificado y qué problema se presenta. Muchas gracias

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    martes, 11 de diciembre de 2018 16:38
    Moderador
  • Claro:

    private void btn_Salir_Click(object sender, EventArgs e)
            {
                if(cnsistema.verificar())
                {
                    Frm_Sis frmlog = new Frm_Sis();
                    frmlog.StartPosition = FormStartPosition.CenterScreen;
                    frmlog.Show();
                    this.Close();
                }
                else 
                {
                    Application.Exit();
                }
              
            }
    
     private void Frm_Inicio_FormClosing(object sender, FormClosingEventArgs e)
            {
                
                 Application.Exit();
            }
    

    En la primar parte hago la validación para cerrar el form o cerrar la aplicación

    martes, 11 de diciembre de 2018 17:11
  • hola

    en el evento closing tienes un parametro reason para determinar si se cierra desde la X de la barra de titulo

    Form.FormClosing Event

    veras que en el ejemplo usa

    e.CloseReason

    eso es lo que deberias evaluar

    CloseReason

    que sea igual a UserClosing, eso indica que se cierra desde la ventana

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 11 de diciembre de 2018 17:19