wpf MVVM, что делать с нажатиями клавиш в симуляторе клавиатуры - PullRequest
0 голосов
/ 20 апреля 2011

У меня есть приложение, которое я написал на C # / winforms, которое в основном представляет собой эмулятор клавиатуры, фиксирует все события клавиатуры, передает событие клавиши другой программе, которая затем отправляет его обратно в мое приложение для отображенияиспользую его для проверки моего ICE-общения ... в любом случае ... довольно просто.В последнее время я перечитывал MVVM и решил переписать программу эмулятора клавиатуры в шаблоне mvvm.Получение данных и привязка их к представлению через представление модели достаточно просто.В чем я не уверен, так это куда идет логика захвата событий нажатия клавиш?Моя первоначальная мысль состоит в том, чтобы по-прежнему фиксировать событие в коде и передавать код ключа в модель представления, которая затем отправляет данные в модель?Тем не менее, я, вероятно, прав, думая, что это не будет следовать шаблону MVVM.Каков будет подход MVVM к этому?

Ответы [ 2 ]

0 голосов
/ 20 апреля 2011

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

В MVVM представление должно (я, вероятно, слишком упрощен):

  • Отображение пользовательского интерфейса
  • Взять пользовательский ввод и управлять моделью представления.

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

Если предложения @Howard делают то же самое с привязками, то это также работает.

0 голосов
/ 20 апреля 2011

Попробуйте это: http://msdn.microsoft.com/en-us/library/system.windows.input.inputbinding.aspx

Мы привыкли использовать его в связывании ключей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...