Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

UIElement.RemoveHandler Method

Removes the specified routed event handler from this element.

Namespace: System.Windows
Assembly: PresentationCore (in presentationcore.dll)

public void RemoveHandler (
	RoutedEvent routedEvent,
	Delegate handler
)
public final void RemoveHandler (
	RoutedEvent routedEvent, 
	Delegate handler
)
public final function RemoveHandler (
	routedEvent : RoutedEvent, 
	handler : Delegate
)
You cannot use methods in XAML.

Parameters

routedEvent

The identifier of the routed event for which the handler is attached.

handler

The specific handler implementation to remove from the event handler collection on this element.

The most common scenario for using this API is when you implement the common language runtime (CLR) "wrapper" event that is associated with a custom routed event, specifically when you implement the "remove" logic for handlers at the CLR level. The example that follows this remarks section illustrates this scenario.

Calling this method has no effect if there were no handlers registered with criteria that matches the input parameters for the method call.

If more than one handler is attached that matched the criteria, only the first handler in the event handler store is removed. This behavior is consistent with CLR behavior of the -= operator.

Neither routedEvent nor handler may be a null reference (Nothing in Visual Basic). Attempting to provide either value as a null reference (Nothing in Visual Basic) will raise an exception.

This method ignores the handledEventsToo parameter information, which is provided if the handler was first added with the AddHandler(RoutedEvent,Delegate,Boolean) signature that enables handling of already-handled events. Either type of handler is removed.

The following example uses RemoveHandler as part of an event wrapper definition.

public static readonly RoutedEvent TapEvent = EventManager.RegisterRoutedEvent("Tap", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(MyButtonSimple));

// Provide CLR accessors for the event
public event RoutedEventHandler Tap
   {
          add { AddHandler(TapEvent, value); } 
          remove { RemoveHandler(TapEvent, value); }
   }

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0

Community Additions

Show:
© 2014 Microsoft