У меня есть Menu
, где каждый MenuItem
в иерархии имеет свойство Command
, установленное в RoutedCommand
, которое я определил. Связанный CommandBinding
обеспечивает обратный вызов для оценки CanExecute
, который управляет включенным состоянием каждого MenuItem
.
Это почти работает. Первоначально элементы меню вызывают правильные состояния включения и выключения. Однако, когда данные, которые мой обратный вызов CanExecute
использует изменения, мне нужна команда для повторного запроса результата из моего обратного вызова, чтобы это новое состояние отображалось в пользовательском интерфейсе.
Для этого не существуют общедоступные методы для RoutedCommand
или CommandBinding
.
Обратите внимание, что обратный вызов используется снова, когда я нажимаю или набираю элемент управления (я предполагаю, что он активирован на входе, потому что переключение с помощью мыши не вызывает обновление).