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).