.NET 4.0 WPFでは、ダブルクリックを検出するにはマウスボタンを押したままにしますか?WPFでマウスの左ダブルクリックをどのように検出しますか?
一見わかりにくい作業です。
System.Windows.Input.MouseButtonEventArgs
を使用してMouseDoubleClick
イベントでどのボタンが押されたのかわかりません。
.NET 4.0 WPFでは、ダブルクリックを検出するにはマウスボタンを押したままにしますか?WPFでマウスの左ダブルクリックをどのように検出しますか?
一見わかりにくい作業です。
System.Windows.Input.MouseButtonEventArgs
を使用してMouseDoubleClick
イベントでどのボタンが押されたのかわかりません。
MouseDoubleClick
は、イベント引数としてMouseButtonEventArgs
を渡します。これにより、ダブルクリックされたボタンを示すChangedButtonプロパティが表示されます。
void OnMouseDoubleClick(Object sender, MouseButtonEventArgs e)
{
if (e.ChangedButton == MouseButton.Left)
{
// Left button was double clicked
}
}
MouseButtonEventArgs.ChangedButton
をお探しですか? API here。
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;
}
}
}
イエップ。それでおしまい。ありがとう。 – AlexPi