Ich hasse EventHandler. Ich hasse es, dass ich die sender
casten muss, wenn ich damit etwas anfangen will. Ich hasse es, dass ich eine neue Klasse erstellen muss, die von EventArgs
erbt, um EventHandler<T>
zu verwenden.Warum * sollten * Wir verwenden EventHandler
Ich habe immer gesagt, dass EventHandler
ist die Tradition und blah, blah ... was auch immer. Aber ich kann keinen Grund finden, warum dieses Dogma immer noch existiert.
Gibt es einen Grund, warum es eine schlechte Idee, einen neuen Delegaten wäre zu machen:
delegate void EventHandler<TSender, T>(TSender sender, T args);
Auf diese Weise wird die sender
typsicher, und ich kann das Heck ich als Argumente (einschließlich benutzerdefinierte passieren, was auch immer wollen EventArgs wenn ich es wünsche).
Dann können Sie auch nur Aktion als Ihr Delegierter verwenden. –
Ja sehr wahr, also werde ich meine Frage erweitern: warum nicht Action? –
RichK