Detectar cuando un formulario se ha cerrado c #

Tengo un WinForm que creo que muestra un mensaje con un botón. Esta es una vista personalizada de WinForm, ya que un cuadro de diálogo de cuadro de mensaje no era suficiente.

Tengo un trabajador de fondo iniciado y ejecutándose. También quiero salir del rato aBackgroundWorker.IsBusy) bucle si se hizo clic en el botón de myForm.

//MyProgram.cs

using(CustomForm myForm = new CustomForm())
{
    myForm.Show(theFormOwner);
    myForm.Refresh();

    while(aBackgroundWorker.IsBusy)
    {
        Thread.Sleep(1);
        Application.DoEvents();
    }
}

Ahora mismo, en laCustomForm elButton_clicked evento, tengo

//CustomForm.cs

private void theButton_Click(object sender, EventArgs e)
{
  this.Close();
}

Necesito agregar más código a la clase CustomForm, o la ubicación donde declaro e inicializo el formulario para poder detectar un cierre?

Respuestas a la pregunta(14)

Su respuesta a la pregunta