【发布时间】:2012-03-12 02:39:02
【问题描述】:
我有一个使用 MVVM 的应用程序。我正在尝试拦截 MCE 遥控器上的按键以进行播放、暂停、停止等...... 目前,我正在将命令绑定与代码中的方法一起使用,以便对媒体元素执行相关操作
<Window.CommandBindings>
<CommandBinding Command="MediaCommands.Play" Executed="PlayMediaElement"/>
<CommandBinding Command="MediaCommands.Stop" Executed="StopMediaElement"/>
</Window.CommandBindings>
在尝试包含远程控制功能之前,我有大约 10 个视图模型/视图,后面没有任何代码。 我想知道是否有更好的方法来做到这一点,所以我保留了 MVVM 模式,或者以这种方式实现是完全可以接受/更可取的。
编辑 - 我已将视图内的 UserControl 中的命令绑定移动到我的 MainWindow.xaml 中,并将方法放入 MainWindow.xaml.cs。 MainWindow 没有视图/视图模型关系,只是一个带有链接到它的视图模型的内容控件。 在我的方法背后的代码中,我使用调解器将消息(播放、暂停、停止等)发送到我的 mediaplayerviewmodel,然后与它各自的视图交互。这是个好主意还是有更好的方法?
【问题讨论】: