ModernWPF.Internal.EventUtil.RemoveHandler C# (CSharp) Method

RemoveHandler() public static method

public static RemoveHandler ( DependencyObject element, System.Windows.RoutedEvent routedEvent, Delegate handler ) : void
element System.Windows.DependencyObject
routedEvent System.Windows.RoutedEvent
handler System.Delegate
return void
        public static void RemoveHandler(DependencyObject element, RoutedEvent routedEvent, Delegate handler)
        {
            if (element == null) { throw new ArgumentNullException("element"); }

            var uie = element as UIElement;
            if (uie != null)
            {
                uie.RemoveHandler(routedEvent, handler);
            }
            else
            {
                var ce = element as ContentElement;
                if (ce != null)
                {
                    ce.RemoveHandler(routedEvent, handler);
                }
                else
                {
                    var u3d = element as UIElement3D;
                    if (u3d != null)
                        u3d.RemoveHandler(routedEvent, handler);
                    else
                        throw new ArgumentException(string.Format(CultureInfo.InvariantCulture, "Invalid element {0}.", element.GetType()));
                }
            }
        }