1

一个 Control 有它ContextMenu并且它MenuItem被绑定到一个ICommand. ICommand 的 Can Execute 有一些代码可以启用和禁用MenuItem. 这会在加载并检查 Can Execute 时命中,但它可以在打开时命中,ContexMenu并且每次打开时都需要命中(检查)ContextMenu

<Border>
    <Border.ContextMenu> 
       <ContextMenu> 
           <MenuItem Command="{Binding SaveCommand, Source={StaticResource vm}}" CommandParameter="{Binding}" Header="Menu1" />
       </ContextMenu> 
    </Border.ContextMenu>
</Border>

怎么可能做到这一点。任何想法?

4

1 回答 1

0

您应该从 ViewModel 触发事件 ICommand.CanExecuteChanged(),这将导致 Control 从 ViewModel 调用 CanExecute。

于 2013-08-08T05:48:55.607 回答