Я пытаюсь связать CanExecute RelayCommand в моем главном окне с дочерним окном, которое, возможно, не существует. Как я должен это делать?Связывание RelayCommand И дополнительное условие
В настоящее время у меня есть:
<MenuItem Header="_Compact"
Command="{Binding Path=CurrentChildViewModel.CompactCommand}"
IsEnabled="{Binding CurrentChildViewModel.CanExecuteCompactCommand,
Converter={StaticResource NullToBooleanConverter}}"/>
Однако это, кажется, не работает, потому что преобразователь должен работать на CurrentChildViewModel (и не CanExecuteCompactCommand, но я также должен включать в себя, что CanExecuteCompactCommand как-то
я хочу. пункт меню должен быть включен, только если CurrentChildViewModel! = null и CurrentChildViewModel.CanExecuteCompactCommand() возвращает значение true.
(причина: CurrentChildViewModel - это ViewModel окна tha t может быть открыт или нет, если он не открыт, я хочу, чтобы пункт меню был отключен. И если он открыт, я хочу, чтобы метод CanExecute команды Compact, чтобы проверить, может ли выполняться команда compact, что-то вроде как по крайней мере двух элементов в списке в ChildView (Model).)
Может кто угодно Помоги пожалуйста?
Я хочу только одну команду, но эта команда находится внутри модели дочернего вида, и она не всегда открывается. Поэтому я могу назвать это только тогда, когда CurrentChildViewModel не является нулевым. –
, так что я до сих пор не совсем понимаю ваш ответ ... –
Это не имеет смысла для меня, вам нужно уточнить, что вы не понимаете. – Terkel