UWP-鼠标中键滚轮单击事件处理程序

时间:2019-07-30 10:10:56

标签: c# events uwp

我有一个按钮控件,当用鼠标滚轮单击时,应该做一些事情。

我从WPF尝试过此操作,但我认为UWP有所不同。

private void Button5_Click(object sender, RoutedEventArgs e)
{
    if (e.ChangedButton == MouseButton.Middle)
    {
        button6.Content = "Hi";
    }
}

2 个答案:

答案 0 :(得分:1)

您可以在install: pip --version上添加PointerPressed事件处理程序。

用法:

Button

更新

在UIElement上添加private void Button5_PointerPressed(object sender, PointerRoutedEventArgs e) { var pointer = e.GetCurrentPoint(sender as Button); if (pointer.Properties.IsMiddleButtonPressed) { button6.Content = "Hello"; } } 事件处理程序,但不添加PointerReleased,我认为Button的Click事件会覆盖鼠标中键事件。

用法:

Button

最诚挚的问候。

答案 1 :(得分:0)

您可以使用任何Pointer事件并处理鼠标设备事件

        BUtton_1.PointerPressed += delegate(object sender, PointerRoutedEventArgs args) 
        {
            Pointer ptr = args.Pointer;
            if (ptr.PointerDeviceType == Windows.Devices.Input.PointerDeviceType.Mouse) // Wheel click has just on mouse
            {
                Windows.UI.Input.PointerPoint ptrPt = args.GetCurrentPoint((Button)sender);
                if (ptrPt.Properties.IsMiddleButtonPressed)
                {
                    TextBox_1.Text += "Hi";
                }
            }
            args.Handled = true;
        };