Mam Menugdzie każdy MenuItemw hierarchii ma swoją Commandwłaściwość ustawioną na RoutedCommandzdefiniowaną przeze mnie. Skojarzony CommandBindingzapewnia wywołanie zwrotne do oceny, CanExecutektóre kontroluje stan włączenia każdego MenuItem.
To prawie działa. Pozycje menu początkowo pojawiają się z prawidłowymi stanami włączenia i wyłączenia. Jednak gdy dane, których CanExecuteużywa moje wywołanie zwrotne, ulegną zmianie, potrzebuję polecenia, aby ponownie zażądać wyniku z mojego wywołania zwrotnego, aby ten nowy stan został odzwierciedlony w interfejsie użytkownika.
Tam nie wydają się być wszelkie metody publiczne na RoutedCommandlub CommandBindingza to.
Zwróć uwagę, że wywołanie zwrotne jest używane ponownie, gdy klikam lub piszę w kontrolce (myślę, że jest wyzwalane przy wprowadzaniu danych, ponieważ najechanie kursorem myszy nie powoduje odświeżenia).