ComAwareEventInfo.RemoveEventHandler(Object, Delegate) Methode

Definitie

Een gebeurtenis-handler loskoppelen van een COM-object.

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)

Parameters

target
Object

Het doelobject waaraan de gebeurtenisdelegatie is gebonden.

handler
Delegate

De gemachtigde van de gebeurtenis.

Kenmerken

Uitzonderingen

De gebeurtenis heeft geen openbare remove toegangsbeheer.

De handler die is doorgegeven, kan niet worden gebruikt.

De target parameter is null en de gebeurtenis is niet statisch.

– of –

De EventInfo is niet gedeclareerd op het doel.

Opmerking: In .NET voor Windows Store-apps of de Portable Class Library kunt u in plaats daarvan Exception vangen.

De beller heeft geen toegangsmachtigingen voor het lid.

Opmerking: In .NET voor Windows Store-apps of de Portable Class Library, haalt u in plaats daarvan de uitzondering van de basisklasse op, MemberAccessException.

Opmerkingen

Deze methode is vergelijkbaar met de EventInfo.RemoveEventHandler(Object, Delegate) methode, behalve dat u hiermee gebeurtenissen van COM-objecten kunt loskoppelen.

Als target dit een COM-object is, brengt deze methode een gemachtigde uit aan een gebeurtenis met behulp van de ComEventsHelper.Remove(Object, Guid, Int32, Delegate) methode.

RemoveEventHandler vereenvoudigt het ongedaan maken van de registratie van COM-gebeurtenissinks die aanroepen doorsturen naar bijbehorende beheerde gemachtigden. Hiervoor is de volgende informatie vereist:

  • Het doelobject zelf (target).

  • De GUID van de broninterface.

  • De DispID van de methode op de COM-interface die overeenkomt met de opgegeven gebeurtenis.

  • De gemachtigde die wordt aangeroepen wanneer het COM-object de bijbehorende gebeurtenis (handler) activeert.

RemoveEventHandler zoekt de bijbehorende COM-broninterface op (opgegeven als de eerste parameter van de ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) constructor). Vervolgens wordt een methode gezocht op de broninterface waarvan de naam identiek is aan de naam van de gebeurtenis. De waarde van GuidAttribute de broninterface is de GUID die wordt doorgegeven aan ComEventsHelper.Remove(Object, Guid, Int32, Delegate); de waarde van DispIDAttribute de methode is de DispID-waarde die wordt doorgegeven aan ComEventsHelper.Remove(Object, Guid, Int32, Delegate).

Van toepassing op