0

我们可以使用 ICommand 代替 Routed Event 来实现 MVVM,这样我们就可以在 ViewModel 中编写逻辑。

这是一个例子:

<Button Width="40" Command="{Binding CommandOne}">Click1
</Button>

但是我们需要自己设置CommandParameter,我的问题是如何将RoutedEventArgs作为CommandParameter发送。

 private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
 {
        throw new NotImplementedException();
 } 

如何在我的 ViewModel 中使用 RoutedEventArgs 作为 CommandParameter?有任何想法吗?

4

1 回答 1

1

我认为没有任何直接的方法可以做到这一点(我不知道)。但这可以通过使用交互性EventTrigger并定义您自己TriggerAction的捕获EventArgs和发送为来实现CommandParameter

这是一个这样做的例子。这里的例子是不同的事件,但可以应用于任何事件。

http://social.msdn.microsoft.com/Forums/silverlight/en-US/5cd586e7-640f-447b-9040-e9270173abf7/passing-drop-event-data-in-a-command-parameter-using-mvvm-和交互框架

于 2013-09-10T03:08:13.247 回答