6

.NET 4.0 WPFでは、マウスのボタンによるダブルクリックをどのように検出しますか?

一見些細な作業。

MouseDoubleClickを使用して、イベントでどのボタンが押されたかを判別する方法がわかりませんSystem.Windows.Input.MouseButtonEventArgs

4

2 に答える 2

17

MouseDoubleClickMouseButtonEventArgsイベント引数として渡します。これにより、どのボタンがダブルクリックされたかを示すChangedButtonプロパティが公開されます。

void OnMouseDoubleClick(Object sender, MouseButtonEventArgs e)
{
    if (e.ChangedButton == MouseButton.Left)
    {
        // Left button was double clicked
    }
}
于 2012-08-08T16:30:23.433 に答える
3

お探しMouseButtonEventArgs.ChangedButtonですか?ここにAPIがあります。

private void MouseButtonDownHandler(object sender, MouseButtonEventArgs e)
{
    Control src = e.Source as Control;

    if (src != null)
    {
        switch (e.ChangedButton)
        {
            case MouseButton.Left:
                src.Background = Brushes.Green;
                break;
            case MouseButton.Middle:
                src.Background = Brushes.Red;
                break;
            case MouseButton.Right:
                src.Background = Brushes.Yellow;
                break;
            case MouseButton.XButton1:
                src.Background = Brushes.Brown;
                break;
            case MouseButton.XButton2:
                src.Background = Brushes.Purple;
                break;
            default:
                break;
        }
    }
}
于 2012-08-08T16:30:40.690 に答える