Provides a systematic way to manage event handlers for the current document.
Assembly: System.Design (in System.Design.dll)
Thetype exposes the following members.
|Equals(Object)||Determines whether the specified object is equal to the current object. (Inherited from Object.)|
|GetHandler||Gets the currently active event handler of the specified type.|
|GetHashCode||Serves as the default hash function. (Inherited from Object.)|
|GetType||Gets the Type of the current instance. (Inherited from Object.)|
|PopHandler||Pops the given handler off of the stack.|
|PushHandler||Pushes a new event handler on the stack.|
|ToString||Returns a string that represents the current object. (Inherited from Object.)|
Developers may want to be able to write code in one place that handles events of a certain type.
Also, developers may need to globally change the behavior of the handlers for specific events or types of events, which may be distributed among designer components.
The designers for a typical project are many different objects so it can be useful to list and store reference to these events from a common place.
This service implements an "event stack" that contains the current set of event handlers. The stack may have a variety of different types of handlers on the stack.
For example, a designer might push, or add, a keyboard handler and a mouse handler onto the stack. When a designer requests an event handler, the service will find the topmost handler on the stack that matches the class you requested.
This way the service can be extended to any eventing scheme, and it also allows specific types of event handlers to be replaced. For example, you can replace mouse event handlers without affecting menu event handlers or keyboard event handlers.