ciao,
se vuoi qualcosa di semplice ma non proprio "pulito", puoi usare la proprietà:
Control.CheckForIllegalCrossThreadCalls = false;
questo ti toglie il controllo di Cross-Thread.
Il corretto uso sarebbe far fare l'esecuzione del metodo al thread che ha creato la form, quindi diciamo alla form stessa, con un codice che usa delegate ovviamente, qualcosa tipo:
this.Invoke(new MethodInvoker(
delegate()
{
this.Close();
}));
ma a volte la prima è la migliore, se l'hanno messo li comodo, perchè non usarlo?
ciao.
Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo