Ho un Menu
dove ognuno MenuItem
nella gerarchia ha la sua Command
proprietà impostata su un RoutedCommand
che ho definito. Il associato CommandBinding
fornisce un callback per la valutazione di CanExecute
quale controlla lo stato abilitato di ciascuno MenuItem
.
Questo funziona quasi . Le voci di menu inizialmente presentano gli stati abilitati e disabilitati corretti. Tuttavia, quando i dati utilizzati dal mio CanExecute
callback cambiano, ho bisogno del comando per richiedere nuovamente un risultato dal mio callback affinché questo nuovo stato si rifletta nell'interfaccia utente.
Non sembra esserci alcun metodo pubblico su RoutedCommand
o CommandBinding
per questo.
Si noti che il callback viene utilizzato di nuovo quando si fa clic o si digita il controllo (suppongo che sia attivato sull'input perché il passaggio del mouse non provoca l'aggiornamento).