Llamando a ShowDialog en BackgroundWorker

Tengo una aplicación WinForms en la que mi trabajador en segundo plano está realizando una tarea de sincronización, agregando nuevos archivos, eliminando los viejos, etc.

En mi código de trabajador de fondo, quiero mostrar un formulario personalizado para que el usuario le diga qué se eliminará y qué se agregará si continúa, con los botones SÍ / NO para obtener sus comentarios.

Me preguntaba si está bien hacer algo como esto en el método DoWork del trabajador de fondo. Si no, ¿cómo debo hacerlo?

Por favor avise..

<code>private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
   MyForm f = new MyForm();
   f.FilesToAddDelete(..);
   DialogResult result = f.ShowDialog();
   if(No...)
   return;
   else
   //keep working...
}
</code>

Respuestas a la pregunta(4)

Su respuesta a la pregunta