ButtonBase.Click Olay

Tanım

Bir tıklandığında gerçekleşir Button .Occurs when a Button is clicked.

public:
 event System::Windows::RoutedEventHandler ^ Click;
public event System.Windows.RoutedEventHandler Click;
member this.Click : System.Windows.RoutedEventHandler 
Public Custom Event Click As RoutedEventHandler 

Olay Türü

RoutedEventHandler

Örnekler

Aşağıdaki örnek üç farklı şekilde tıklamalarına yanıt veren üç düğme gösterir.The following example shows three buttons that respond to clicks in three different ways.

  • Üzerine gelme-ilk düğme, Kullanıcı fare işaretçisini düğmenin üzerinde gezdirdiğinde renkleri değiştirirHover - the first button changes colors when the user hovers with the mouse over the button

  • İkinci düğme, fare işaretçisi düğme üzerindeyken farenin düğmesine basılmasını gerektirir.Press - the second button requires that the mouse be pressed while the mouse pointer is in the button.

  • Yayın-üçüncü, fare düğmesine basılana ve düğme serbest bırakılana kadar düğmelerin arka plan rengini sıfırlamaz.Release - the third does not reset the background color of the buttons until the mouse is pressed and released in the button.

<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

Açıklamalar

Kullanıcı, Click bir AccessText veya denetimi odağa sahıp olduğunda Enter ya da ara çubuğu tuşlarına basarak olayı oluşturabilir.The user can raise the Click event by using an AccessText or by pressing ENTER or the SPACEBAR when the control has focus. Kullanıcı ara çubuğuna bastığında denetim, IsPressed fare olarak ayarlanır true ve yakalar.When the user presses the SPACEBAR, the control sets IsPressed to true and captures the mouse. Sonuç olarak, denetim ve gibi fare olaylarını yükseltir MouseEnter IsMouseDirectlyOverChanged .As a result, the control will raise mouse events such as MouseEnter and IsMouseDirectlyOverChanged. AccessTextVeya ENTER kullanmanın fareyi değiştirmediğini IsPressed veya yakamadığını, ancak olayı tetiklemediğini unutmayın Click .Note that using the AccessText or ENTER does not change IsPressed or capture the mouse, but it does raise the Click event.

, ButtonBase MouseLeftButtonDown Olayı yönteminde işlenmiş olarak işaretler OnMouseLeftButtonDown ve Click olayı oluşturur.The ButtonBase marks the MouseLeftButtonDown event as handled in the OnMouseLeftButtonDown method and raises the Click event. Bu nedenle, ' OnMouseLeftButtonDown den devralan bir denetim için olay hiçbir şekilde gerçekleşmeyecektir ButtonBase .Hence, the OnMouseLeftButtonDown event will never occur for a control that inherits from ButtonBase. Bunun yerine, olaya bir olay işleyicisi iliştirin PreviewMouseLeftButtonDown veya olarak ayarla ' yı çağırın AddHandler(RoutedEvent, Delegate, Boolean) handledEventsToo true .Instead, attach an event handler to the PreviewMouseLeftButtonDown event, or call AddHandler(RoutedEvent, Delegate, Boolean) with handledEventsToo set to true.

Yönlendirilmiş Olay BilgisiRouted Event Information

Tanımlayıcı alanıIdentifier field ClickEvent
Yönlendirme stratejisiRouting strategy TırmanmaBubbling
TemsilciDelegate RoutedEventHandler

Şunlara uygulanır