ComAwareEventInfo.AddEventHandler(Object, Delegate) Yöntem

Tanım

COM nesnesine olay işleyicisi ekler.

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)

Parametreler

target
Object

Olay temsilcisinin bağlanması gereken hedef nesne.

handler
Delegate

Olay temsilcisi.

Öznitelikler

Açıklamalar

Bu yöntem, COM nesnelerine EventInfo.AddEventHandler(Object, Delegate) olay eklemenize izin vermesi dışında yöntemine benzer.

BIR COM nesnesiyse target , bu yöntem yöntemini kullanarak ComEventsHelper.Combine(Object, Guid, Int32, Delegate) bir olaya temsilci ekler.

AddEventHandler , çağrıları ilgili yönetilen temsilcilere ileden COM olay havuzlarının kaydedilmesini kolaylaştırır. Aşağıdaki bilgileri gerektirir:

  • Hedef nesnenin kendisi (target).

  • Kaynak arabirimin GUID'i.

  • Com arabiriminde belirtilen olaya karşılık gelen yönteminin DispID değeri.

  • COM nesnesi karşılık gelen olayı (handler) tetiklediğinde çağrılacak temsilci.

AddEventHandler karşılık gelen COM kaynak arabirimini arar (oluşturucunun ilk parametresi ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) olarak belirtilir). Ardından kaynak arabiriminde adı olay adıyla aynı olan bir yöntem arar. Kaynak arabirimdeki değeri GuidAttribute , öğesine ComEventsHelper.Combine(Object, Guid, Int32, Delegate)geçirilen GUID'dir; yöntemindeki değeri DispIDAttribute , öğesine ComEventsHelper.Combine(Object, Guid, Int32, Delegate)geçirilen DispID değeridir.

Şunlara uygulanır