tengo un Menu
donde cada MenuItem
en la jerarquía tiene su Command
propiedad establecida en una RoutedCommand
he definido. El CommandBinding
asociado proporciona una devolución de llamada para la evaluación de CanExecute
que controla el estado habilitado de cada MenuItem
.WPF - Cómo forzar un comando para volver a evaluar 'CanExecute' a través de sus CommandBindings
Este funciona casi. Los elementos de menú inicialmente aparecen con los estados habilitados y deshabilitados correctos. Sin embargo, cuando cambian los datos que utiliza mi devolución de llamada CanExecute
, necesito el comando para volver a solicitar un resultado de mi devolución de llamada para que este nuevo estado se refleje en la UI.
No parece haber ningún método público en RoutedCommand
o CommandBinding
para esto.
Tenga en cuenta que la devolución de llamada se utiliza nuevamente cuando hago clic o escribo en el control (supongo que se activa en la entrada porque el mouse no causa la actualización).
Gracias, funcionó bien. Hay un ligero retraso en la IU, pero no estoy demasiado preocupado por eso.Además, elevé tu respuesta de inmediato, luego volví a votar para ver si funcionaba. Ahora que está funcionando, no puedo volver a aplicar el voto nuevamente. No estoy seguro de por qué SO tiene esa regla en su lugar. –
Edité tu respuesta para volver a aplicar mi voto. No cambié nada en la edición. Gracias de nuevo. –
jaja ok :) gracias! – Arcturus