如何将RoutedEventArgs添加为命令参数

时间:2013-09-10 02:33:28

标签: wpf mvvm icommand commandparameter

我们可以使用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? 有什么想法吗?

1 个答案:

答案 0 :(得分: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-and-the-interactivity-framework