Ho un Menudove ognuno MenuItemnella gerarchia ha la sua Commandproprietà impostata su un RoutedCommandche ho definito. Il associato CommandBindingfornisce un callback per la valutazione di CanExecutequale 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 CanExecutecallback 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 RoutedCommando CommandBindingper 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).