Ciao,
potresti impostare "Control.CheckForIllegalCrossThreadCalls = false" così eviti i problemi di Cross-thread, non è il massimo ma potrebbe essere comodo.
oppure un codice di questo tipo, senza BackgroundWorker:
miaTextBox.Invoke(new MethodInvoker(
delegate()
{
outputTextBox.Text = ....;
outputTextBox.Refresh();
}));
Ciao.
Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo