Share via


ComAwareEventInfo.AddEventHandler(Object, Delegate) Methode

Definition

Fügt einen Ereignishandler an ein COM-Objekt an.

public:
 override void AddEventHandler(System::Object ^ target, Delegate ^ handler);
public override void AddEventHandler (object target, Delegate handler);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public override void AddEventHandler (object target, Delegate handler);
override this.AddEventHandler : obj * Delegate -> unit
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
override this.AddEventHandler : obj * Delegate -> unit
Public Overrides Sub AddEventHandler (target As Object, handler As Delegate)

Parameter

target
Object

Das Zielobjekt, an das der Ereignisdelegat gebunden werden soll.

handler
Delegate

Der Ereignisdelegat.

Attribute

Hinweise

Diese Methode ähnelt der -Methode, mit der EventInfo.AddEventHandler(Object, Delegate) Ausnahme, dass Sie Ereignisse an COM-Objekte anfügen können.

Wenn target ein COM-Objekt ist, fügt diese Methode mithilfe der ComEventsHelper.Combine(Object, Guid, Int32, Delegate) -Methode einen Delegaten zu einem Ereignis hinzu.

AddEventHandler erleichtert das Registrieren von COM-Ereignissenken, die Aufrufe an die entsprechenden verwalteten Delegaten weiterleiten. Hierfür sind die folgenden Informationen erforderlich:

  • Das Zielobjekt selbst (target).

  • Die GUID der Quellschnittstelle.

  • Die DispID der -Methode auf der COM-Schnittstelle, die dem angegebenen Ereignis entspricht.

  • Der Delegat, der aufgerufen wird, wenn das COM-Objekt das entsprechende Ereignis (handler) auslöst.

AddEventHandler sucht die entsprechende COM-Quellschnittstelle (angegeben als erster Parameter des ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) Konstruktors). Anschließend wird eine Methode auf der Quellschnittstelle nachschlagen, deren Name mit dem Ereignisnamen identisch ist. Der Wert von GuidAttribute für die Quellschnittstelle ist die GUID, die an ComEventsHelper.Combine(Object, Guid, Int32, Delegate)übergeben wird. Der Wert von DispIDAttribute für die -Methode ist der DispID-Wert, der an ComEventsHelper.Combine(Object, Guid, Int32, Delegate)übergeben wird.

Gilt für: