Ehilà 
Piccoli quesiti che google fatica a rispondere (sopratutto se non sai quello che cerchi esattamente).
Ho un Evento scritto da me, e utilizzato in un thread separato.. piccola preview della classe JoyInput (classe custom per gestire il joystick):
codice:
public delegate void gestoreButtonReleased(object sorgente, int button);
Class JoyInput
{
public void joystart() {
//dichiarazione dei controlli input
//eseguo un while infinito su un thread separato per attendere una pressione del bottone
Thread t = new Thread(new ThreadStart(this.WaitForInput));
t.Name = "JoyInput Thread";
t.Start();
}
//Evento pubblico
public event gestoreButtonReleased OnButtonReleased;
//metodo eseguito su un altro thread
private WaitForInput() {
//condizioni varie
//se la pressione è true
OnButtonReleased(this, i);
}
}
ok fin qua ho tutto quello che mi serve.. alla pressione del bottone rialza l'evento se sottoscritto. Andiamo nella window principale ora
codice:
// codice codice
public void funzionex
{
//Dichiaro il joypad
JoyInput joy = new JoyInput();
joy.joystart();
//sottoscrivo l'evento alla pressione del bottone
joy.OnButtonReleased += new gestoreButtonReleased(joy_OnButtonReleased);
}
private void joy_OnButtonReleased(object sorgente, int button)
{
EseguiStopPlay();
}
private void EseguiStopPlay()
{
//azioni varie sui controlli
}
Mi riporta errore dentro il metodo EseguiStopPlay:
Informazioni aggiuntive: Impossibile accedere all'oggetto dal thread chiamante perché tale oggetto è di proprietà di un altro thread.
Infatti il problema è che EseguiStopPlay viene eseguito sul thread separato, non su quello principale.. come fare?