ButtonBase.Click Evento

Definición

Se produce cuando se hace clic en .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 

Tipo de evento

Ejemplos

En el ejemplo siguiente se muestran tres botones que responden a clics de tres maneras diferentes.

  • Mantener el puntero: el primer botón cambia los colores cuando el usuario mantiene el mouse sobre el botón.

  • Presione : el segundo botón requiere que se presione el mouse mientras el puntero del mouse está en el botón.

  • Liberar: el tercero no restablece el color de fondo de los botones hasta que se presiona y suelta el mouse en el botón.

<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

Comentarios

El usuario puede generar el Click evento mediante o AccessText presionando ENTRAR o la BARRA ESPACIADORA cuando el control tenga el foco. Cuando el usuario presiona la barra ESPACIADORA, el control se establece IsPressed en true y captura el mouse. Como resultado, el control generará eventos del mouse como MouseEnter y IsMouseDirectlyOverChanged. Tenga en cuenta que el uso de AccessText o ENTER no cambia IsPressed ni captura el mouse, pero genera el Click evento.

ButtonBase marca el MouseLeftButtonDown evento como controlado en el OnMouseLeftButtonDown método y genera el Click evento. Por lo tanto, el OnMouseLeftButtonDown evento nunca se producirá para un control que herede de ButtonBase. En su lugar, adjunte un controlador de eventos al PreviewMouseLeftButtonDown evento o llame a AddHandler(RoutedEvent, Delegate, Boolean) con establecido en handledEventsTootrue.

Información del evento enrutado

Elemento Value
Campo identificador ClickEvent
Estrategia de enrutamiento Bubbling
Delegado RoutedEventHandler

Se aplica a