Допустим, у меня есть пользовательский элемент управления с кнопкой
<UserControl>
<Grid>
<Button x:Name="button" Content="Show Dialog" DataContext="{Binding m_btnShowDialog}" Style="{StaticResource ButtonVM}" Command="{Binding Cmd}" HorizontalAlignment="Left" Margin="29,56,0,0" VerticalAlignment="Top" Width="75" >
</Grid>
</UserControl>
Командный класс реализует интерфейс ICommand.
Когда фокус находится в приведенном выше диалоговом окне, иногда вызывается CanExecute.
Этого следовало ожидать.
Проблема в том, что когда я нажимаю кнопку, вызывается метод Execute и появляется новое модальное диалоговое окно.
Фокус должен быть на новом диалоговом окне, но по некоторым причинам CanExecute все еще вызывается, когда я взаимодействую с новым диалоговым окном.
Это нормальное поведение?
И как я могу изменить это поведение?
Я не хочу, чтобы метод команд CanExecute, прикрепленных к элементам управления родительского диалогового окна, вызывался при отображении дочернего модального диалогового окна.