Das .Net Framework beinhaltet bereits Delegaten, welche bestimmte Signaturen haben.
1. Der EventHandler
stellt einen Delegaten dar, der keinen Rückgabewert hat (void), und 2 Parameter hat. 1. Ist der object sender , welcher das Senderobject implementiert und EventArgs[] welcher evtl. Argumente beinhalten kann. Diesen Delegaten findet man, wenn man zu einem Event von Steuerelementen eine Methode aufruft.
2. Action<>
Der Action Delegat besitzt keinen Rückgabewert, wohl aber bis zu 16 Parameterelemente. Dieser Delegat kann z.B. dazu verwendet werden um eine Methode mit der Task Klasse aufzurufen und diese im neuen Thread zu starten.
1 |
Task.Run(new Action(MeineMethode)); |
Das geht natürlich auch mit anonymen Methoden
1 2 3 4 |
Task.Run(() => { //Do something here }); |
3. Func<>
Der Func Delegat ist dem Action<> Delegaten gleich, liefert im Gegensatz zu ihm aber einen Rückgabewert
Login