无法将路由命令添加到WPF中的CheckBox

时间:2009-07-07 09:06:41

标签: c# wpf checkbox routed-commands

某些menuItems使用自定义RoutedCommand; 我想使用相同的RoutedCommand复选框:

<CheckBox Command="local:MainWindow.SwitchContextCommand">

编译器没有错误,但是当我开始使用app时,我得到一个异常,告诉我Command值不能为null,因此SwitchContextCommand不能附加到checkBox.Command。

该命令适用于菜单。

第一个问题:这可能吗?我想我可以回答这个问题,因为CheckBox类包含属性Command和CommandParameters。似乎有可能。

第二:它是如何运作的?使用MenuItems,在显示菜单时调用CanExecute。对于经常显示的复选框会发生什么?在点击时隐式调用了吗?

第三:为什么它不起作用?

谢谢!

1 个答案:

答案 0 :(得分:1)

SwitchContextCommand是MainWindow类的静态成员,对吗?

尝试在Command属性中使用它:

Command="{x:Static local:MainWindow.SwitchContextCommand}"

我希望你的命令在被检查时会被激活,但我会尝试看看。