EventManager クラス


クラス所有者のルーティング イベントを登録し、クラス ハンドラーを追加する、イベント関連のユーティリティ メソッドを提供します。Provides event-related utility methods that register routed events for class owners and add class handlers.

public ref class EventManager abstract sealed
public static class EventManager
type EventManager = class
Public Class EventManager

次の例は、このクラスを使用して、新しいルーティングイベントをクラスメンバーとして登録する方法を示しています。また、このクラスを使用して、CLRCLR イベントの add および remove 実装をオーバーライドするルーティングイベント "ラッパー" の手法を使用する方法を示します。The following example show how to use this class to register a new routed event as a class member, along with the routed event "wrapper" technique of overriding the add and remove implementations for a CLRCLR event.

public static readonly RoutedEvent ButtonColorChangedEvent = EventManager.RegisterRoutedEvent("ButtonColorChanged",RoutingStrategy.Bubble,typeof(DependencyPropertyChangedEventHandler),typeof(Shirt));

public event RoutedEventHandler ButtonColorChanged  {
    add {AddHandler(ButtonColorChangedEvent,value);}
    remove { RemoveHandler(ButtonColorChangedEvent, value); }
Public Shared ReadOnly ButtonColorChangedEvent As RoutedEvent = EventManager.RegisterRoutedEvent("ButtonColorChanged",RoutingStrategy.Bubble,GetType(DependencyPropertyChangedEventHandler),GetType(Shirt))

Public Custom Event ButtonColorChanged As RoutedEventHandler
    AddHandler(ByVal value As RoutedEventHandler)
    End AddHandler
    RemoveHandler(ByVal value As RoutedEventHandler)
        MyBase.RemoveHandler(ButtonColorChangedEvent, value)
    End RemoveHandler
    RaiseEvent(ByVal sender As Object, ByVal e As RoutedEventArgs)
    End RaiseEvent
End Event


このクラスは、新しいルーティングイベントを RegisterRoutedEventで登録するために最もよく使用されます。This class is most commonly used to register a new routed event, with RegisterRoutedEvent.

2番目の最も一般的な API 使用方法は RegisterClassHandlerです。The second most common API usage is RegisterClassHandler. このメソッドを使用して、クラスまたは添付イベントのルーティングイベントのクラス処理を有効にします。You use this method to enable class handling of a routed event on the class, or an attached event. 詳細については、「ルーティングイベントを処理済みとしてマークする」および「クラス処理」を参照してください。For details, see Marking Routed Events as Handled, and Class Handling.



イベント システムに登録されたルーティング イベントの識別子を返します。Returns identifiers for routed events that have been registered to the event system.


指定された所有者型で登録されているイベントのルーティング イベント識別子をすべて検索します。Finds all routed event identifiers for events that are registered with the provided owner type.

RegisterClassHandler(Type, RoutedEvent, Delegate)

特定のルーティング イベントのクラス ハンドラーを登録します。Registers a class handler for a particular routed event.

RegisterClassHandler(Type, RoutedEvent, Delegate, Boolean)

イベント データが既に処理済みとしてマークされているイベントを処理するオプションを使用して、特定のルーティング イベントのクラス ハンドラーを登録します。Registers a class handler for a particular routed event, with the option to handle events where event data is already marked handled.

RegisterRoutedEvent(String, RoutingStrategy, Type, Type)

新しいルーティング イベントを Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) イベント システムに登録します。Registers a new routed event with the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) event system.