Non c'è davvero un'interfaccia. C'è l'oggetto che solleva l'evento e poi un delegato (s) che gestisce l'evento. L'oggetto che solleva l'evento non ha idea di chi / cosa / come verrà gestito l'evento. Solleva semplicemente l'evento con qualsiasi dato rilevante sul messaggio in modo che i delegati possano gestirlo correttamente.
Il delegato deve registrarsi come gestore per quell'evento.
Qualcosa del genere:
button1.Click += new EventHandler(button1Click);
Quindi ci sarà il metodo che gestirà l'evento:
void button1Click(object obj, EventArgs e)
{
//Do Something with the click
}
Non è garantito che " Event Driven Programming Model " esisterà sulla tua piattaforma o ambiente. Succede su Windows che questo sia supportato.
Con .Net, il supporto viene fornito con la possibilità di generare eventi e utilizzare i delegati per gestirli. C'è anche costruito nel supporto asincrono pure.
Sotto, il sistema operativo (Windows) ha un messaggio pompa o ciclo che è costantemente in bicicletta e gestisce i messaggi che vengono pubblicati. In genere, nei linguaggi di livello superiore non è necessario interagire con gli interni poiché questi sono protetti dal framework con spazi dei nomi come System.Windows.Forms
. Ma puoi avvicinarti al pump dei messaggi lavorando direttamente con l'API di Windows (se lo desideri).
Puoi saperne di più sul messaggio pompa qui:
link