2011-04-19 72 views
0

我有一个应用程序,我写在C#/ winforms基本上是一个键盘模拟器,捕获所有的键盘事件,将关键事件传递给另一个程序,然后该程序发送它回到我的应用程序来显示..我用它来测试我的ICE通信..反正..非常简单。我最近一直在阅读MVVM,并决定在mvvm patten中重写我的键盘模拟器程序。通过模型视图接收数据并将其绑定到视图非常简单。我不确定的是逻辑去捕捉按键事件的去处?我最初的想法是仍然在后面的代码中捕获事件并将关键代码传递给视图模型,视图模型然后将数据发送到模型?但是,我认为这不符合MVVM模式可能是正确的。什么是MVVM的方法呢?wpf MVVM键盘模拟器按键怎么做

回答

0

我不相信你说的话违反了MVVM模式。在MVVM中,您尝试避免将代码放入不属于视图的视图中。

在MVVM视图的责任是(我可能是过度简化):

  • 的UI显示
  • 采取用户输入和操作视图模型。

因此,在代码隐藏中捕获视图的关键输入并将其传递给viewmodel似乎完全合乎逻辑。

如果@Howard的建议对绑定做同样的事情,那么也适用。