![]() |
1
0
正如您所看到的,如果您为CanExecute返回true,那么这些命令就会被吃掉。 您可能想看看CompositeCommand。那更适合你。创建绑定到框架的全局CompositeCommand,然后可以将不同的视图附着到该框架。不同的实现可以有不同的方法来确定命令的多个订阅者的行为。即所有必须返回canExecute、任何必须返回、仅进入活动视图等。 编辑:CompositeCommand最初是Prism的一部分,但您可以找到一个独立的实现,也可以直接从Prism中删除该实现: https://github.com/PrismLibrary/Prism/blob/master/Source/Prism/Commands/CompositeCommand.cs |
![]() |
2
0
另外一个想法是查看AddHandler()方法。让我们为所有子事件添加一个事件处理程序。例如,为了控制面包屑,我可以: AddHandler(BreadcrumbSplitButton.ClickEvent,new RoutedEventHandler(OnBreadcrumbSplitButtonClick)); 在BreadCrumb类中,侦听来自所有子BreadcrumbSplitButtons的ClickEvent。 |