Was sind Ereignisse in C#
? Können Sie mir ein klares Echtzeitbeispiel und Programm geben?
Schöne und präzise Erklärung.
Was sind Ereignisse in C#
? Können Sie mir ein klares Echtzeitbeispiel und Programm geben?
Ein Ereignis ist ein Hook an einem Objekt, über den das Objekt sagen kann "Hey, es steht etwas Interessantes bevor" (oder ist gerade passiert), und der Code außerhalb des Objekts kann (bevor das etwas passiert) sagen "Ich bin an dieser Nachricht interessiert".
Nehmen Sie zum Beispiel Schaltflächen, dieser Code:
btOK.Click += new EventHandler(btOK_Click);
Dies sagt der Schaltfläche: Hey, wenn du das Click-Ereignis auslösen möchtest (das ausgelöst wird, wenn der Benutzer auf die Schaltfläche klickt), lass es mich wissen, indem du meine Methode btOK_Click aufrufst.
Sie können es auch anders betrachten. Angenommen, Sie haben einen gelben Zettel an Ihrem Monitor, auf dem steht "Wenn der Code aufhört zu kompilieren, rufen Sie bitte Frank an", das ist ein Ereignis. Was Frank tut, wenn Sie ihn anrufen, das ist der "Ereignis-Handler", der "Code", der als Antwort auf Ihr Ereignis ausgeführt wird.
Also die Begriffe lauten:
Es gibt viele Informationen im Web über Ereignisse und .NET/C#:
oder ... Sie können auch hier spezifischere Fragen stellen, und ich bin sicher, dass jemand Ihnen helfen wird, die Details zu verstehen.
Fröhliches Ereignisbehandeln.
Probieren Sie das C# Events Tutorial auf MSDN.
Zusammenfassung:
Ein Ereignis in C# ist eine Möglichkeit für eine Klasse, Benachrichtigungen an Clients dieser Klasse bereitzustellen, wenn etwas Interessantes mit einem Objekt passiert. Der bekannteste Verwendungszweck für Ereignisse liegt in grafischen Benutzeroberflächen; in der Regel haben die Klassen, die Steuerelemente in der Benutzeroberfläche darstellen, Ereignisse, die benachrichtigt werden, wenn der Benutzer etwas mit dem Steuerelement macht (zum Beispiel, auf eine Schaltfläche klicken).
Ein Ereignis ist ein Accessor für ein Delegatenobjekt, genauso wie eine Eigenschaft ein Accessor für ein Feld ist. Die Accessoren sind mit "hinzufügen" und "entfernen" benannt anstatt mit "holen" und "setzen". Ein Unterschied besteht darin, dass der Compiler automatisch Accessoren generiert, wenn Sie keine eigenen bereitstellen.
Sie können nicht verstehen, was ein Ereignis wirklich macht, bis Sie verstanden haben, was ein Delegat macht. Suchen Sie nach diesem Schlüsselwort bei Google.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
5 Stimmen
Bitte versuchen Sie, Ihre Frage umzufassen. Es scheint, als würden Sie sich zurücklehnen und darauf warten, dass jemand Ihre Arbeit erledigt, anstatt Ihnen zu helfen, Ihre Arbeit zu erledigen.