Когда я пытаюсь получить eventinfo из «прямоугольника WPF», если routedEvent является родным событием для объекта (например, «MouseDown»), он работает (например, присвоения) ,GetEvent() возвращает значение null для присоединенного события
DependencyObject d = rectangle;
string routedEvent = "MouseDown";
EventInfo eventInfo = d.GetType().GetEvent(routedEvent,
BindingFlags.Public | BindingFlags.Instance);
Но когда я хочу, чтобы получить EventInfo для вложенного события (я думаю, что я использую этот термин правильно) на прямоугольнике, как:
string routedEvent = "Microsoft.Surface.Presentation.Contacts.ContactDownEvent";
GetEvent() возвращает нулевое
Любая идея о том, как получить eventinfo для присоединенного события.
Благодаря
Dan
RoutedEvent [] routedEvents = EventManager.GetRoutedEventsForOwner (d.GetType()); возвращает null? Я проверил d.GetType() возвращает прямоугольник. –
Обновлен мой ответ. –
Кент, спасибо за совет. Я чувствую, что приближаюсь. Мой первоначальный запрос состоял в том, чтобы получить объект EventInfo, потому что я хочу добавить обработчик события (через .AddEventHandler). Если я получаю тип RoutedEvent вместо EventInfo (по вашей рекомендации), как добавить обработчик? Спасибо –