In this chapter, I’ll talk about the last kind of member that a type can define: events. A type that defines an event member allows the type (or instances of the type) to notify other objects that something special has happened. For example, the
Button class defines an event called
Click. When a
Button object is clicked, several objects in the application might want to receive a notification and perform some action. Events are type members that allow for this interaction. Specifically, defining an event member means that a type is offering three capabilities:
The capability for objects to register their interest in the event
The capability for objects to unregister their interest in the event
The capability for the object defining ...