В MVVM, как лучше всего ViewModel реагировать на действия пользователя в View?
Я понимаю, что в MVVM:
View знает о ViewModelViewModel знает о моделино это не работает вверх, поэтому Модель ничего не знает о ViewModelи ViewModel ничего не знает о представленииТаккак ViewModel реагирует на действия пользователя в представлениинапример, введите что-нибудь в TextBox или переместите ползунок и т. д.
Я понимаю, что это сделано сRoutedEvents но почти все примеры RoutedEvent, которые я нахожу, используют CodeBehind в представлении, а это именно то, чего у вас больше нет в MVVM.
Так что уходитRoutedCommands что я нахожу больше примеров в MVVM, но, например, перемещение ползунка действительно некоманда в этом смысле это событие, поэтому мне интересно, действительно ли это то, что следует использовать.
Затем япрочитайте совет такие как "В МВВМиспользуйте RoutedEvents как можно меньше, а такженет RoutedCommands вообще." ХОРОШО.
Так что выходит, например вWPF Model-View-ViewModel Toolkit 0.1 Проект команды WPF сами у вас естьDelegateCommand"который также выглядит как интересный путь.
Тогда некоторые люди также используютRelayCommand».
Это большой выбор и путаница для того, чтобы сделать что-то столь важное для разработки приложений.
Как лучше всего сделать в MVVM то, что мы делали последние 10 лет с Code Behind?:
кнопка созданиякнопка двойного щелчканаписать код обработки