Почему ICommand лучше, чем код, стоящий за вызовом виртуальной машины?

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

Он хочет добавить кнопку, а затем сделать для нее событие в коде. Затем из события он хочет вызвать метод модели ViewModel.

Я дал ему очевидный ответ: это добавляет связь между View и ViewModel. Но он утверждал, что View и ViewModel уже связаны. (Мы устанавливаем DataContext нашего представления в ViewModel в коде View позади: DataContext = new MyViewModel ();

Да, я сказал ему, что его способ добавляет «больше связи», но это звучало немного неубедительно даже для меня.

Итак, я знаю, что ICommand - это чистый способ, и я делаю это именно так. Но что еще ICommand покупает вам, кроме использования уже существующей связи?

14
задан H.B. 23 December 2011 в 06:18
поделиться