Cómo cerrar la aplicación completa cuando la aplicación tiene más de 2 formularios sin mostrar el cuadro de mensaje más de una vez

Estoy desarrollando una aplicación utilizando formularios de Windows. El proyecto contiene 3 formularios: un formulario de inicio de sesión que es el formulario principal y otros dos que son formularios secundarios del formulario de inicio de sesión.

Mi problema es cuando quiero cerrar la aplicación total usandoApplication.Exit() En el evento de cierre de formulario, mi caja de mensajes muestra el diálogo más de una vez.

1. Este código en el formulario de inicio de sesión es decir, el formulario principal:

private void FrmLogIn_FormClosing(object sender, FormClosingEventArgs e)
    {
        DialogResult loginResult = MessageBox.Show("Do you want to close this application?","Close",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);
        if (loginResult == DialogResult.Yes)
        {
            Application.Exit();
        }
    }

2.AdminForm evento de cierre que es un formulario secundario al formulario de inicio de sesión:

 private void FrmAdmin_FormClosing(object sender, FormClosingEventArgs e)
    {
        DialogResult loginResult = MessageBox.Show("Do you want to close this application?","Close",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);
        if (loginResult == DialogResult.Yes)
        {
            Application.Exit();
        }
    }

3. Evento de cierre del formulario de operaciones de operaciones que es un formulario secundario al formulario de inicio de sesión:

private void FrmBillOperation_FormClosing(object sender, FormClosingEventArgs e)
{
    DialogResult loginResult = MessageBox.Show("Do you want to close this application?","Close",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);
    if (loginResult == DialogResult.Yes)
    {
        Application.Exit();
    }
}

Cuando haga clic en el botón de cerrar en cualquier forma, se mostrará el mensaje MessageBox solo una vez. Por favor, ayúdame.

Respuestas a la pregunta(4)

Su respuesta a la pregunta