Hay veces que necesitamos llamar al evento (Binding) que se lanza al pulsar una tecla en el teclado por ejemplo, en el último campo de un formulario. Para conseguir esto solo debemos escribir el siguiente código.
1 2 3 4 5 |
<TextBox> <TextBox.InputBindings> <KeyBinding Key="Enter" Command="{Binding CommandViewModel}"/> </TextBox.InputBindings> </TextBox> |
En el código anterior se puede comprobar como la propiedad «Key» hace referencia a la tecla pulsada, en este caso Enter.
Si además queremos pasar como parámetro lo que se ha escrito en el Textbox podemos añadir el siguiente código.
1 2 3 4 5 6 |
<TextBox> <TextBox.InputBindings> <KeyBinding Key="Enter" Command="{Binding CommandViewModel}" CommandParameter="{Binding Path=Text, RelativeSource={RelativeSource AncestorType={x:Type TextBox}}}"/> </TextBox.InputBindings> </TextBox> |