WPF:如何在绑定命令无法执行时启用按钮(splitbutton)?

我正在构建一个自定义的分割按钮,它由两个重叠的按钮和弹出窗口组成 - 就像这样(图像显示了一些通用的splitbutton): SplitButton http://windowsclient.net/wf/blogs/jfoscoding/splitbutton.PNG 我的SplitButton打开弹出窗口,右侧单击箭头,并在单击主按钮时执行SplitButton.Command。 但是在我的情况下,有时默认操作无法执行,在这种情况下,当单击一个主按钮时,我想打开弹出窗口。 我已经完成了,但问题是: SplitButton是ToggleButton的子类 在ControlTemplate中,我有一个ToggleButton(底部的一个)和Button(更短,覆盖在顶部)
Button.Command="{TemplateBinding Command}"
(所以我可以做
<SplitButton Command="{Binding MyDefaultAction}">...
) 问题:当命令无法执行时,整个SplitButton被禁用。 我想继续使用相同的命令,但是要覆盖按钮的行为,以便在Command.CanExecute()返回false时不会禁用它。我怎样才能做到这一点? 谢谢!     
已邀请:
Command是一个依赖属性,我很确定它在可视树中由它下面的任何控件继承。因此,对于您不希望禁用的按钮,将command属性设置为其他命令或将其设置为null也可以。 或者, 创建自己的依赖属性...就像这样 依赖属性     

要回复问题请先登录注册