ButtonBase.Click Zdarzenie

Definicja

Występuje, gdy Button zostanie kliknięty.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 

Typ zdarzenia

RoutedEventHandler

Przykłady

Poniższy przykład pokazuje trzy przyciski, które reagują na kliknięcia na trzy różne sposoby.The following example shows three buttons that respond to clicks in three different ways.

  • Aktywowanie — pierwszy przycisk zmienia kolory po umieszczeniu wskaźnika myszy nad przyciskiemHover - the first button changes colors when the user hovers with the mouse over the button

  • Naciśnięcie klawisza — drugi przycisk wymaga naciśnięcia przycisku myszy, gdy wskaźnik myszy znajduje się na przycisku.Press - the second button requires that the mouse be pressed while the mouse pointer is in the button.

  • Wersja — trzecia nie resetuje koloru tła przycisków do momentu naciśnięcia i zwolnienia przycisku myszy.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

Uwagi

Użytkownik może zgłosić zdarzenie przy Click użyciu AccessText lub naciskając klawisz ENTER lub spację, gdy kontrolka ma fokus.The user can raise the Click event by using an AccessText or by pressing ENTER or the SPACEBAR when the control has focus. Gdy użytkownik naciśnie SPACJę, formant ustawia IsPressed na true i przechwytuje mysz.When the user presses the SPACEBAR, the control sets IsPressed to true and captures the mouse. W związku z tym kontrolka będzie zgłaszać zdarzenia myszy, takie jak MouseEnter i IsMouseDirectlyOverChanged .As a result, the control will raise mouse events such as MouseEnter and IsMouseDirectlyOverChanged. Należy zauważyć, że użycie AccessText lub ENTER nie powoduje zmiany IsPressed ani przechwycenia myszy, ale powoduje Click zdarzenie.Note that using the AccessText or ENTER does not change IsPressed or capture the mouse, but it does raise the Click event.

ButtonBaseOznacza MouseLeftButtonDown zdarzenie jako obsłużone w OnMouseLeftButtonDown metodzie i wywołuje Click zdarzenie.The ButtonBase marks the MouseLeftButtonDown event as handled in the OnMouseLeftButtonDown method and raises the Click event. W związku OnMouseLeftButtonDown z tym zdarzenie nigdy nie zostanie wykonane dla formantu, który dziedziczy z ButtonBase .Hence, the OnMouseLeftButtonDown event will never occur for a control that inherits from ButtonBase. Zamiast tego należy dołączyć procedurę obsługi zdarzeń do PreviewMouseLeftButtonDown zdarzenia lub wywołać polecenie AddHandler(RoutedEvent, Delegate, Boolean) z handledEventsToo ustawioną opcją true .Instead, attach an event handler to the PreviewMouseLeftButtonDown event, or call AddHandler(RoutedEvent, Delegate, Boolean) with handledEventsToo set to true.

Informacje dotyczące kierowanego zdarzeniaRouted Event Information

Pole identyfikatoraIdentifier field ClickEvent
Strategia routinguRouting strategy PropagacjaBubbling
DelegatDelegate RoutedEventHandler

Dotyczy