ButtonBase.Click イベント
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Button がクリックされたときに発生します。
public:
event System::Windows::RoutedEventHandler ^ Click;
public event System.Windows.RoutedEventHandler Click;
member this.Click : System.Windows.RoutedEventHandler
Public Custom Event Click As RoutedEventHandler
イベントの種類
例
次の例では、3 つの異なる方法でクリックに応答する 3 つのボタンを示します。
ホバー - ユーザーがボタンの上にマウスポインターを合わせると、最初のボタンの色が変わります
[押す] - 2 番目のボタンでは、マウス ポインターがボタン内にある間にマウスを押す必要があります。
リリース - 3 番目の ボタンは、ボタンでマウスが押されて離されるまで、ボタンの背景色をリセットしません。
<Button Name="btn1" Background="Pink"
BorderBrush="Black" BorderThickness="1"
Click="OnClick1" ClickMode="Hover">
ClickMe1
</Button>
<Button Name="btn2" Background="LightBlue"
BorderBrush="Black" BorderThickness="1"
Click="OnClick2" ClickMode="Press">
ClickMe2
</Button>
<Button Name="btn3"
Click="OnClick3" ClickMode="Release">
Reset
</Button>
void OnClick1(object sender, RoutedEventArgs e)
{
btn1.Background = Brushes.LightBlue;
}
void OnClick2(object sender, RoutedEventArgs e)
{
btn2.Background = Brushes.Pink;
}
void OnClick3(object sender, RoutedEventArgs e)
{
btn1.Background = Brushes.Pink;
btn2.Background = Brushes.LightBlue;
}
Private Sub OnClick1(ByVal sender As Object, ByVal e As RoutedEventArgs)
btn1.Background = Brushes.LightBlue
End Sub
Private Sub OnClick2(ByVal sender As Object, ByVal e As RoutedEventArgs)
btn2.Background = Brushes.Pink
End Sub
Private Sub OnClick3(ByVal sender As Object, ByVal e As RoutedEventArgs)
btn1.Background = Brushes.Pink
btn2.Background = Brushes.LightBlue
End Sub
注釈
ユーザーは、 を使用AccessTextするか、コントロールにClickフォーカスがあるときに Enter キーまたは SPACE キーを押してイベントを発生させることができます。 ユーザーが SPACE キーを押すと、コントロールは にtrue
設定IsPressedされ、マウスがキャプチャされます。 その結果、コントロールは や などの MouseEnter マウス イベントを IsMouseDirectlyOverChanged発生させます。 または ENTER を AccessText 使用しても、マウスは変更 IsPressed またはキャプチャされませんが、イベントは Click 発生します。
は ButtonBase 、 MouseLeftButtonDown メソッドで OnMouseLeftButtonDown 処理されたイベントとしてマークし、 イベントを Click 発生させます。 そのため、 から継承ButtonBaseされたOnMouseLeftButtonDownコントロールに対してイベントが発生することはありません。 代わりに、イベント ハンドラーを イベントにPreviewMouseLeftButtonDownアタッチするか、 を に設定して handledEventsToo
true
を呼び出しますAddHandler(RoutedEvent, Delegate, Boolean)。
ルーティングされたイベント情報
識別子フィールド | ClickEvent |
ルーティング戦略 | バブル |
代理人 | RoutedEventHandler |
適用対象
.NET