2010-11-23 6 views
0

Angenommen, ich habe einen CompositeCommand mit vielen registrierten DelegateCommands.In WPF/Prism, was passiert mit einem CompositeCommand, wenn ein DelegateCommand.RaiseCanExecuteChanged ausgelöst wird?

Wenn eines der untergeordneten DelegateCommands RaiseCanExecuteChanged auslöst, führt dies dazu, dass das Ereignis CompositeCommand.CanExecuteChanged ausgelöst wird, wodurch dasselbe Ereignis in den anderen untergeordneten Klassen ausgelöst wird, oder nur den aktiven DelegateCommand?

Antwort

2

Habe gerade herausgefunden. Durch die Analyse der Interna von Prism habe ich festgestellt, dass sich die CompositeCommand im Ereignis CanExecuteChanged ihrer Kinder registriert. Jedes Mal, wenn ein registrierter Befehl den Handler CanExecuteChanged auslöst, führt der Befehl composite das gleiche für sich und alle seine untergeordneten Elemente aus.