我有一个菜单(Menu),其中层次结构中的每个MenuItem都将其Command属性设置为我定义的RoutedCommand。相关的CommandBinding提供了一个回调来评估CanExecute,以控制每个MenuItem的启用状态。
这几乎可以工作。菜单项最初使用正确的启用和禁用状态出现。但是,当我CanExecute回调使用的数据发生更改时,我需要命令重新请求从我的回调中得到结果,以便在UI中反映此新状态。
似乎没有任何公共方法可用于此RoutedCommand或CommandBinding。
请注意,当我单击或输入控件时会再次使用回调(我猜这是因为鼠标悬停不会导致刷新)。