4

您如何在 Metro 应用程序中处理 MVVM 中的事件?我在 WPF 中使用了来自 MVVM 灯的交互类和 EventToCommand,但在 WinRT 中似乎没有交互。也没有触发器,所以我必须“使用丑陋的方式”吗?(后面的代码和

(this.DataContext as ViewModel).Command.Execute()

例如?)

4

2 回答 2

1

到目前为止,我发现的 EventToCommand 的最佳替代方案是附加的命令解决方案,该解决方案已在此CodeProject 文章中演示。

这就是它的使用方式。

<Button Content="Test Button"
 local:AttachedCommand.RoutedEvent="PointerEntered"
 local:AttachedCommand.Command="{Binding TestCommand}"/>

另一种选择是模仿Joost van Schaik 的 EventToCommand 行为,但考虑到所需的依赖关系,它对我来说太重了。

于 2013-01-02T20:30:34.317 回答
0

使用与 Silverlight 中相同的方法附加命令,除了绑定到视图模型将使用接口和实现它的类。此类应用作数据上下文中的定位器,并在 app.xaml.cs 文件中声明它。如果您需要更多详细信息,请告诉我。

于 2013-01-03T15:26:04.250 回答