Exemple #1
0
        public bool AddHandler(RoutedEvent routedEvent, Delegate handler, bool capturing)
        {
            DelayedRemovalList <RoutedEventHandlerInfo> handlerList;

            if (!_handlers.TryGetValue(routedEvent.Index, out handlerList))
            {
                _handlers.Add(routedEvent.Index, handlerList = new DelayedRemovalList <RoutedEventHandlerInfo>(1));
            }

            foreach (var handlerInfo in handlerList)
            {
                if (handlerInfo.Handler == handler)
                {
                    return(false);
                }
            }

            handlerList.Add(new RoutedEventHandlerInfo(handler, capturing));
            return(true);
        }
Exemple #2
0
        public bool AddHandler(RoutedEvent routedEvent, Delegate handler, bool capturing)
        {
            DelayedRemovalList<RoutedEventHandlerInfo> handlerList;
            if (!_handlers.TryGetValue(routedEvent.Index, out handlerList))
                _handlers.Add(routedEvent.Index, handlerList = new DelayedRemovalList<RoutedEventHandlerInfo>(1));

            foreach (var handlerInfo in handlerList) {
                if (handlerInfo.Handler == handler)
                    return false;
            }

            handlerList.Add(new RoutedEventHandlerInfo(handler, capturing));
            return true;
        }