ButtonBase.Click Evento

Definición

Se genera 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.

  • Presionar: 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 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 evento o llame AddHandler(RoutedEvent, Delegate, Boolean) a PreviewMouseLeftButtonDown con handledEventsToo establecido en true.

Información sobre eventos enrutados

Campo identificador ClickEvent
Estrategia de enrutamiento Burbujeante
Delegado RoutedEventHandler

Se aplica a