Найти пункт назначения RoutedEvent - PullRequest
3 голосов
/ 23 октября 2010

Когда я выполняю маршрутизируемую команду, скажем:

ApplicationCommands.Undo.Execute(null, this);

WPF творит магию, чтобы найти CommandBinding, для которого он выполняет ExecutedRoutedEventHandler.

Есть ли способ получить ссылку на CommandBinding (или хотя бы на обработчик), который будет выполнен?

Иногда для отладки было бы неплохо узнать, кто обрабатывает команду.

1 Ответ

0 голосов
/ 24 октября 2010

Вы можете попробовать проверить списки CommandBinding в:

       UIElement
       ContentElement 
       UIElement3D

ApplicationCommands внутренне проверяют, есть ли у отправителя определенная команда в CommandBinding.Кроме того, если отправитель имеет значение null, то Keyboard.FocusedElement назначается отправителем.

...