ComAwareEventInfo.RemoveEventHandler(Object, Delegate) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Odłącza program obsługi zdarzeń od obiektu 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)
Parametry
- target
- Object
Obiekt docelowy, do którego jest powiązany delegat zdarzenia.
- handler
- Delegate
Delegat zdarzenia.
- Atrybuty
Wyjątki
Zdarzenie nie ma publicznego remove
dostępu.
Nie można użyć procedury obsługi, która została przekazana.
Parametr target
to null
i zdarzenie nie jest statyczne.
-lub-
Obiekt EventInfo nie jest zadeklarowany w obiekcie docelowym.
Uwaga: w programie .NET dla aplikacji ze Sklepu Windows lub w bibliotece klas przenośnych przechwyć Exception zamiast tego.
Obiekt wywołujący nie ma uprawnień dostępu do członka.
Uwaga: na platformie .NET dla aplikacji ze Sklepu Windows lub biblioteki klas przenośnych przechwyć wyjątek klasy bazowej , MemberAccessExceptionzamiast tego.
Uwagi
Ta metoda jest podobna EventInfo.RemoveEventHandler(Object, Delegate) do metody , z tą różnicą, że umożliwia odłączanie zdarzeń od obiektów COM.
Jeśli target
jest obiektem COM, ta metoda zwalnia delegata do zdarzenia przy użyciu ComEventsHelper.Remove(Object, Guid, Int32, Delegate) metody .
RemoveEventHandler ułatwia wyrejestrowywanie ujść zdarzeń COM, które przekazują wywołania do odpowiednich zarządzanych delegatów. Wymaga to następujących informacji:
Sam obiekt docelowy (
target
).Identyfikator GUID interfejsu źródłowego.
DispID metody w interfejsie COM, który odpowiada określonemu zdarzeniu.
Delegat, który zostanie wywołany, gdy obiekt COM wyzwala odpowiednie zdarzenie (
handler
).
RemoveEventHandler wyszukuje odpowiedni interfejs źródłowy MODELU COM (określony jako pierwszy parametr konstruktora ComEventInterfaceAttribute.ComEventInterfaceAttribute(Type, Type) ). Następnie wyszukuje metodę w interfejsie źródłowym, którego nazwa jest identyczna z nazwą zdarzenia. Wartość GuidAttribute
w interfejsie źródłowym to identyfikator GUID przekazywany do ComEventsHelper.Remove(Object, Guid, Int32, Delegate)metody . Wartość DispIDAttribute
metody to wartość DispID przekazywana do ComEventsHelper.Remove(Object, Guid, Int32, Delegate)metody .