ComAwareEventInfo.AddEventHandler(Object, Delegate) Метод

Определение

Присоединяет обработчик событий к объекту модели COM.

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)

Параметры

target
Object

Целевой объект, к которому должен привязываться делегат события.

handler
Delegate

Делегат события.

Атрибуты

Комментарии

Этот метод аналогичен методу , EventInfo.AddEventHandler(Object, Delegate) за исключением того, что он позволяет присоединять события к COM-объектам.

Если target является COM-объектом, этот метод добавляет делегат к событию с помощью ComEventsHelper.Combine(Object, Guid, Int32, Delegate) метода .

AddEventHandler упрощает регистрацию приемников событий COM, которые перенаправляют вызовы соответствующим управляемым делегатам. Для этого требуются следующие сведения:

  • Сам целевой объект (target).

  • ИДЕНТИФИКАТОР GUID исходного интерфейса.

  • DispID метода в COM-интерфейсе, соответствующий указанному событию.

  • Делегат, который будет вызываться, когда COM-объект активирует соответствующее событие (handler).

AddEventHandler ищет соответствующий интерфейс источника COM (указывается в качестве первого параметра конструктора ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) ). Затем он ищет метод в интерфейсе источника, имя которого идентично имени события. Значение в GuidAttribute исходном интерфейсе является идентификатором GUID, передаваемым в ComEventsHelper.Combine(Object, Guid, Int32, Delegate); значение DispIDAttribute в методе является значением DispID, которое передается в ComEventsHelper.Combine(Object, Guid, Int32, Delegate).

Применяется к