Bagikan melalui


ComAwareEventInfo.RemoveEventHandler(Object, Delegate) Metode

Definisi

Mencopot penanganan aktivitas dari objek COM.

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

Parameter

target
Object

Objek target tempat delegasi peristiwa terikat.

handler
Delegate

Delegasi peristiwa.

Atribut

Pengecualian

Kejadian ini tidak memiliki aksesor publik remove .

Handler yang diteruskan tidak dapat digunakan.

Parameternya target adalah null dan peristiwanya tidak statis.

-atau-

EventInfo tidak dinyatakan pada target.

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap Exception sebagai gantinya.

Pemanggil tidak memiliki izin akses ke anggota.

Catatan: Di .NET untuk aplikasi Bursa Windows atau Pustaka Kelas Portabel, tangkap pengecualian kelas dasar, MemberAccessException, sebagai gantinya.

Keterangan

Metode ini mirip EventInfo.RemoveEventHandler(Object, Delegate) dengan metode , kecuali memungkinkan Anda untuk melepaskan peristiwa dari objek COM.

Jika target adalah objek COM, metode ini merilis delegasi ke peristiwa dengan menggunakan ComEventsHelper.Remove(Object, Guid, Int32, Delegate) metode .

RemoveEventHandler memfasilitasi membatalkan pendaftaran sink peristiwa COM yang meneruskan panggilan ke delegasi terkelola yang sesuai. Ini memerlukan informasi berikut:

  • Objek target itu sendiri (target).

  • GUID antarmuka sumber.

  • DispID metode pada antarmuka COM yang sesuai dengan peristiwa yang ditentukan.

  • Delegasi yang akan dipanggil saat objek COM memicu peristiwa yang sesuai (handler).

RemoveEventHandler mencari antarmuka sumber COM yang sesuai (ditentukan sebagai parameter pertama konstruktor ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) ). Kemudian ia mencari metode pada antarmuka sumber yang namanya identik dengan nama peristiwa. Nilai GuidAttribute pada antarmuka sumber adalah GUID yang diteruskan ke ComEventsHelper.Remove(Object, Guid, Int32, Delegate); nilai DispIDAttribute pada metode adalah nilai DispID yang diteruskan ke ComEventsHelper.Remove(Object, Guid, Int32, Delegate).

Berlaku untuk