Как я могу обрабатывать маршрутизируемые команды WPF в моей ViewModel без кода программной части?C#

Место общения программистов C#
Ответить
Anonymous
 Как я могу обрабатывать маршрутизируемые команды WPF в моей ViewModel без кода программной части?

Сообщение Anonymous »

Насколько я понимаю MVVM, хорошей практикой является обработка маршрутизируемых команд непосредственно во ViewModel.

Когда маршрутизируемая команда определена в ViewModel как RelayCommand (или DelegateCommand), ее легко привязать непосредственно к команде следующим образом: Command={Binding MyViewModelDefinedCommand}.

На самом деле, для маршрутизируемой команды, которая определена вне моей ViewModel, я обрабатываю эти команды в коде позади представления и пересылаю вызовы в Модель просмотра. Но мне неловко, что мне приходится это делать. Это противоречит рекомендуемым передовым практикам MVVM. Я думаю, что должен быть более элегантный способ выполнить эту работу.

Как я могу обрабатывать «System.Windows.Input.ApplicationCommands» или любую перенаправленную команду, определенную вне модели представления непосредственно в ViewModel.
Другими словами, для команды, определенной вне ViewModel, как я могу обрабатывать обратный вызов CommandBinding «CommandExecute» и/или «CommandCanExecute» напрямую в ViewModel?
Это возможно или нет? Если да, то как? Если нет, то почему?

Подробнее здесь: https://stackoverflow.com/questions/361 ... ode-behind
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»