Zitat von
Jürgen Thomas:
Zitat von
Khabarakh:
Na dann würde ich an deiner Stelle unbedingt mal "delegates" im Suchindex des SDKs eingeben.
Naja, das
SDK hilft für die Praxis gerade dann oft wenig, wenn man grundlegende Erläuterungen sucht.
Ich glaube du verwechselst das
SDK gerade mit der Delphihilfe
. Die Kapitel über Delegates und Events sind geradezu sagenhaft ausführlich und lassen wirklich keine Wünsche mehr offen.
Zitat:
Zu den vorgeschlagenen Codes: Diese sind im Prinzip OK, entsprechen aber nicht den MS-Vorschlägen, nach denen Delegates immer mit EventArgs verbunden werden sollen:
Bei Events.
Zitat:
Aus Doberenz/Gewinnus (Kochbuch Delphi 2005), einem C#-Lehrbuch und NET-Doku habe ich ein
Verfahren zusammengestellt, das ich als Anlage beigefügt habe.
Schöne Zusammenfassung (für weitere Informationen gibt es ja immer noch das .Net-
SDK), nur ein paar Kleinigkeiten/Anmerkungen:
- Schritt 1:
- Mit System.EventHandler<TEventArgs> kann man sich das Leben noch ein wenig leichter machen.
Code:
// Achtung: u.U. sind alle Typen als Klassen zu deklarieren;
// aber überall, wo ich es bisher gemacht habe, klappt die implizite Typwandlung
- Typen-Präfixe ("bCancel") sind unüblich, Konstruktorargumente fangen wie Variablen mit einem Kleinbuchstaben an.
- Schritt 2 kann man sich sparen, indem man SharpDevelop und Alt + Einfg benutzt .
- Schritt 3 und 4 können seit 2.0 durch anonyme Methoden ersetzt werden (zusätzlich ist nun das "new XYEventHandler(..." optional), außerdem wird einem hier viel Schreibaufwand durch die IDE abgenommen (#d: automatische Deklaration anonymer Methoden, VS: automatische Deklaration benannter Methoden).