如何在XAML中添加一个完整的Click MouseGesture到ListBoxItem。

问题描述 投票:0回答:1

我有一个 ListBoxItem 带着 LeftClick 手势。

<ListBoxItem x:Name="ListViewItemMenu" Content="{Binding Path=Header}" Padding="37 14" FontSize="15" Foreground="White">
    <ListBoxItem.InputBindings>
        <MouseBinding Gesture="LeftClick" Command="ApplicationCommands.New" />
    </ListBoxItem.InputBindings>
</ListBoxItem>

但实际上这不是一个真正的Click,它只是一个简单的 MouseLeftButtonDown 姿态。该 Command 无论按钮被按下后是否升起,都会被执行。

我希望在点击的时候能有一个完整的 MouseDownMouseUp 姿态 ListBoxItem. 有什么办法可以做到这一点?非常感谢。

另外,我也找不到一种方法来增加一个 Command 到一个 Expander. 上文所示的方法,以 ListBoxItem 不工作。这里有什么魔法吗?谢谢!我有一个ListBoxItem,它的手势是:左键点击。

wpf vb.net command gesture inputbinding
1个回答
0
投票

根据 本回答 你可以继承 MouseGesture 来创建自定义手势。这里甚至有一个完整的例子和实现。

另一种方法是使用 System.Windows.Interactivity.EventTrigger 如图 本回答,这将让你把 MouseLeftButtonUpPreviewMouseLeftButtonUp 事件变成命令触发器。

© www.soinside.com 2019 - 2024. All rights reserved.