wpf - 使用交互触发器时获取 EventArgs

标签 wpf xaml mousewheel interaction eventtrigger

我正在使用这种方式从 XAML 中捕获事件:

<i:Interaction.Triggers>
    <i:EventTrigger EventName="MouseWheel">
        <ei:CallMethodAction MethodName="ChangeValue" TargetObject="{Binding DataContext}" />
    </i:EventTrigger>
</i:Interaction.Triggers>

这种方式很有效,我可以在我的代码中触发我的 ChangeValue 函数。 但我想知道我的 ChangeValue 函数的鼠标滚轮方向(向上或向下)。 有办法吗?

最佳答案

您可以使用 MVVM LightEventToCommand ,它还有一个 PassEventArgsToCommand 属性。然后,代替方法,定义一个接收事件参数作为参数的命令。您的 XAML 应如下所示:

<i:Interaction.Triggers>
    <i:EventTrigger EventName="MouseWheel">
        <cmd:EventToCommand Command="{Binding ChangeValueCommand}"
                            PassEventArgsToCommand="True" />
    </i:EventTrigger>
</i:Interaction.Triggers>

关于wpf - 使用交互触发器时获取 EventArgs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13422146/

相关文章:

WPF MVVM 绑定(bind)到 UserControl 的 DependencyProperty 不起作用

xaml - WP7 - 使用列表框动态创建 PivotItem

c# - WP7/Xaml 从中心旋转图像

wpf - 鼠标滚轮增量值始终为 120

javascript - 获取每个滚动并增加事件类

javascript - 如何在溢出隐藏div上使用鼠标滚动事件

运行时的 WPF Binding.ValidationRules

wpf - 将 WPF 日期选择器的默认日期设置为当前日期

WPF:工具栏中的嵌套菜单项

c# - 绑定(bind)控件的 x :Name