Использование RaiseCanExecuteChanged - PullRequest
0 голосов
/ 22 июня 2011

Я делаю два таких метода:

private void Next (строковый аргумент) {Current = Clients [Clients.IndexOf (Current) + 1];((DelegateCommand) NextCommand) .RaiseCanExecuteChanged ();}

private void Previous (строковый аргумент) {Current = Clients [Clients.IndexOf (Current) - 1];((DelegateCommand) PreviousCommand) .RaiseCanExecuteChanged ();

}

и привязка к xaml:

Все работает нормально.И следующая кнопка становится неактивной / серой, когда она попадает в последний пост.Проблема в том, что он (кнопка «Далее») остается неактивным, когда я нажимаю кнопку «Назад».Кнопка Далее становится неактивной все время.У меня вопрос, как я могу снова активировать кнопку «Далее»?Спасибо за помощь.

1 Ответ

0 голосов
/ 22 июня 2011

Полагаю, вы говорите о приложении WPF.

Существует несколько причин, по которым ваша кнопка может стать / оставаться неактивной:

  • Ваша реализация CanExecute неисправна и возвращает false, даже если она должна возвращать true
  • Вы не реализовали CanExecute или неправильно подключили его
  • CommandManager не осознавал, что пришло время запрашивать команды
  • У вас проблема с фокусировкой на вашем окне / элементе управления

Вам нужно показать больше кода, чтобы он дал нам более широкую картину того, что вы пытаетесь сделать.

...