ComAwareEventInfo.AddEventHandler(Object, Delegate) Metod

Definition

Kopplar en händelsehanterare till ett COM-objekt.

public:
 override void AddEventHandler(System::Object ^ target, Delegate ^ handler);
public override void AddEventHandler(object target, Delegate handler);
override this.AddEventHandler : obj * Delegate -> unit
abstract member AddEventHandler : obj * Delegate -> unit
override this.AddEventHandler : obj * Delegate -> unit
Public Overrides Sub AddEventHandler (target As Object, handler As Delegate)

Parametrar

target
Object

Målobjektet som händelsedelegaten ska binda till.

handler
Delegate

Händelsedelegaten.

Kommentarer

Den här metoden liknar EventInfo.AddEventHandler(Object, Delegate) metoden förutom att du kan koppla händelser till COM-objekt.

Om target är ett COM-objekt lägger den här metoden till ett ombud till en händelse med hjälp ComEventsHelper.Combine(Object, Guid, Int32, Delegate) av metoden .

AddEventHandler underlättar registrering av COM-händelsemottagare som vidarebefordrar anrop till motsvarande hanterade ombud. Det kräver följande information:

  • Själva målobjektet (target).

  • GUID för källgränssnittet.

  • DispID för metoden i COM-gränssnittet som motsvarar den angivna händelsen.

  • Ombudet som anropas när COM-objektet utlöser motsvarande händelse (handler).

AddEventHandler letar upp motsvarande COM-källgränssnitt (anges som den första parametern i ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) konstruktorn). Sedan letar den upp en metod i källgränssnittet vars namn är identiskt med händelsenamnet. Värdet GuidAttribute för i källgränssnittet är det GUID som skickas till ComEventsHelper.Combine(Object, Guid, Int32, Delegate). Värdet DispIDAttribute för på metoden är det DispID-värde som skickas till ComEventsHelper.Combine(Object, Guid, Int32, Delegate).

Gäller för