Weird problem where Button does not get re-enabled unless the mouse is clicked
My problem seemed to be bound to the Command Binding - I used the RelayCommand
as I frequently do but the rendering of a button just wasn't correct until I clicked a window.
Removing the CanExecute
code from the CommandBinding
and using an IsEnabled
property instead resolved my problem without a head ache - it just took forever until I tried this among so many other things that could have been the problem.
WPF doesn't update command bound controls unless it has a reason to. Clicking on the GUI causes WPF to refresh so the update then works.
You can manually cause a refresh of any command bound controls by calling CommandManager.InvalidateRequerySuggested
.