internal static void AddDragEnterHandler(DependencyObject element, CustomDragEventHandler handler, bool handledEventsToo) { if (element == null) { throw new ArgumentNullException("element"); } if (handler == null) { throw new ArgumentNullException("handler"); } CustomExtendedRoutedEventHandlerCollection<CustomDragEventHandler, CustomDragEventArgs> dragEnterHandlers = element.GetDragEnterHandlers(); CustomExtendedRoutedEventHandlerCollection<CustomDragEventHandler, CustomDragEventArgs> handlers2 = dragEnterHandlers ?? new CustomExtendedRoutedEventHandlerCollection<CustomDragEventHandler, CustomDragEventArgs>((h, a) => h(element, a)); handlers2.Add(handler, handledEventsToo); if (handlers2 != dragEnterHandlers) { element.SetValue(DragEnterHandlerProperty, handlers2); } }
internal static void AddDragLeaveHandler(DependencyObject element, CustomDragEventHandler handler) { AddDragLeaveHandler(element, handler, false); }
internal static void RemoveDropHandler(DependencyObject element, CustomDragEventHandler handler) { if (element == null) { throw new ArgumentNullException("element"); } if (handler == null) { throw new ArgumentNullException("handler"); } CustomExtendedRoutedEventHandlerCollection<CustomDragEventHandler, CustomDragEventArgs> dropHandlers = element.GetDropHandlers(); if (dropHandlers != null) { dropHandlers.Remove(handler); } }