I know this question has been asked many times in different ways in many websites and also in StackOverFlow but all the answers I found are not helping me ot to be precise I
Something in your code (or the version of WPF being used at the time(?)) is overcomplicating things. I am able to bind such as
Where the command is setup like this:
VM.DeleteItem
= new OperationCommand((o) => MessageBox.Show("Delete Me"),
(o) => (myGrid.SelectedItem as Order)?.InProgress == false );