Example #1
0
        private void UnregisterHandlerInternal(DependencyObject target, RoutedEvent routedEvent)
        {
            EventHandlerObjectInfo eh = registeredHandlers.FirstOrDefault(rh => rh.Target == target && rh.Event == routedEvent);

            if (eh != null)
            {
                registeredHandlers.Remove(eh);
            }
        }
Example #2
0
        private void RegisterHandlerInternal(DependencyObject target, RoutedEvent routedEvent, Action <object, RoutedEventArgs> routedEventHandler)
        {
            if (Target == null)
            {
                return;
            }
            if (!registeredEvents.Contains(routedEvent))
            {
                Target.AddHandler(routedEvent, new RoutedEventHandler(LocalEventHandler));
                registeredEvents.Add(routedEvent);
            }
            EventHandlerObjectInfo eh = registeredHandlers.FirstOrDefault(rh => rh.Target == target && rh.Event == routedEvent);

            if (eh != null)
            {
                return;
            }
            eh = new EventHandlerObjectInfo()
            {
                Event = routedEvent, Target = target, Handler = routedEventHandler
            };
            registeredHandlers.Add(eh);
        }