Какова реальная задача CanExecuteChanged и CommandManager.RequerySuggested?

Я получил следующий код из учебника Джоша Смита по MVVM .

Может ли кто-нибудь быстро объяснить, что на самом деле делает этот код?

public event EventHandler CanExecuteChanged
{
    add { CommandManager.RequerySuggested += value; }
    remove { CommandManager.RequerySuggested -= value; }     
}

Я не могу понять две вещи:

  1. что делает событие CanExecuteChanged ?
  2. что делает CommandManager.RequerySuggested ?

Приведенный выше код взят из RelayCommand Класс из здесь .

36
задан Kev 26 July 2011 в 15:58
поделиться