Mam Menu
gdzie każdy MenuItem
w hierarchii ma swoją Command
właściwość ustawioną na RoutedCommand
zdefiniowaną przeze mnie. Skojarzony CommandBinding
zapewnia wywołanie zwrotne do oceny, CanExecute
któ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 CanExecute
uż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 RoutedCommand
lub CommandBinding
za 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).