/// <summary> /// Gets a routed event from a qualified event name like 'UIElement.MouseDown'. /// </summary> /// <param name="namespaceHandler">Namespace handler for eventProvider.</param> /// <param name="eventProvider">Name of event provider type.</param> /// <param name="eventName">Event name.</param> /// <returns>Returns the routed event or <c>null</c> if <see cref="eventProvider"/> has no event with this name.</returns> private RoutedEvent GetQualifiedEvent(INamespaceHandler namespaceHandler, string eventProvider, string eventName) { Type type = namespaceHandler.GetElementType(eventProvider, true); if (type != null) { foreach (var routedEvent in EventManager.GetRoutedEventsForOwner(type)) { if (routedEvent.Name.Equals(eventName)) { return routedEvent; } } } return null; }