如何在 Interaction.Triggers 中传递 PassEventArgsToCommand 和 CommandParameter

Posted

技术标签:

【中文标题】如何在 Interaction.Triggers 中传递 PassEventArgsToCommand 和 CommandParameter【英文标题】:How to Pass PassEventArgsToCommand along with CommandParameter in Interaction.Triggers 【发布时间】:2016-04-27 10:50:20 【问题描述】:

我需要在 Interaction.Triggers - WPF C#

中传递 PassEventArgsToCommandCommandParameter

我的 XAML 源代码:

<i:Interaction.Triggers>
    <i:EventTrigger EventName="MouseDoubleClick">
        <commandHelper:EventToCommand PassEventArgsToCommand="True" Command="Binding OpenDetailsCommandByLeftMouseBtn" CommandParameter="Provider"/>
    </i:EventTrigger>
</i:Interaction.Triggers>

对我来说,它会引发异常从“System.String”到“System.Windows.Input.MouseButtonEventArgs”的无效转换

【问题讨论】:

【参考方案1】:

您可以使用 InvokeCommandAction。

 <i:Interaction.Triggers>
                <i:EventTrigger EventName="MouseDoubleClick">
                    <i:InvokeCommandAction Command="Binding ButtonClickCommand" CommandParameter="parameter"/>
                </i:EventTrigger>
            </i:Interaction.Triggers>

【讨论】:

感谢您的回复,可能会通过EventArgs?

以上是关于如何在 Interaction.Triggers 中传递 PassEventArgsToCommand 和 CommandParameter的主要内容,如果未能解决你的问题,请参考以下文章

Interaction triggers in WPF

如何将 KeyEventArgs 参数传递给命令

wpf listboxitem 双击事件

我无法使用来自 caliburn micro 的 ActionMessage,我该如何解决?

MVVMLight EventToCommand导致内存泄漏

WPF EventTrigger并不总是触发