Control.KeyUp Evento
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Si verifica quando si rilascia un tasto mentre il controllo ha lo stato attivo.
public:
event System::Windows::Forms::KeyEventHandler ^ KeyUp;
public event System.Windows.Forms.KeyEventHandler KeyUp;
public event System.Windows.Forms.KeyEventHandler? KeyUp;
member this.KeyUp : System.Windows.Forms.KeyEventHandler
Public Custom Event KeyUp As KeyEventHandler
Tipo evento
Esempio
Nell'esempio di codice seguente viene usato l'evento KeyUp con la Help classe per visualizzare la Guida popup all'utente.
// This example demonstrates how to use the KeyUp event with the Help class to display
// pop-up style help to the user of the application. When the user presses F1, the Help
// class displays a pop-up window, similar to a ToolTip, near the control. This example assumes
// that a TextBox control, named textBox1, has been added to the form and its KeyUp
// event has been connected to this event handler method.
private:
void textBox1_KeyUp( Object^ /*sender*/, System::Windows::Forms::KeyEventArgs^ e )
{
// Determine whether the key entered is the F1 key. Display help if it is.
if ( e->KeyCode == Keys::F1 )
{
// Display a pop-up help topic to assist the user.
Help::ShowPopup( textBox1, "Enter your first name", Point(textBox1->Right,this->textBox1->Bottom) );
}
}
// This example demonstrates how to use the KeyUp event with the Help class to display
// pop-up style help to the user of the application. When the user presses F1, the Help
// class displays a pop-up window, similar to a ToolTip, near the control. This example assumes
// that a TextBox control, named textBox1, has been added to the form and its KeyUp
// event has been contected to this event handler method.
private void textBox1_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{
// Determine whether the key entered is the F1 key. Display help if it is.
if(e.KeyCode == Keys.F1)
{
// Display a pop-up help topic to assist the user.
Help.ShowPopup(textBox1, "Enter your first name", new Point(textBox1.Right, this.textBox1.Bottom));
}
}
' This example demonstrates how to use the KeyUp event with the Help class to display
' pop-up style help to the user of the application. When the user presses F1, the Help
' class displays a pop-up window, similar to a ToolTip, near the control. This example assumes
' that a TextBox control, named textBox1, has been added to the form and its KeyUp
' event has been contected to this event handler method.
Private Sub textBox1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles textBox1.KeyUp
' Determine whether the key entered is the F1 key. Display help if it is.
If e.KeyCode = Keys.F1 Then
' Display a pop-up help topic to assist the user.
Help.ShowPopup(textBox1, "Enter your first name", New Point(textBox1.Right, Me.textBox1.Bottom))
End If
End Sub
Nell'esempio di codice seguente viene illustrato l'ordine di aumento KeyDowndegli eventi e KeyUpKeyPress , nonché come registrare i gestori eventi su di essi.
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
textBox2.Multiline = true;
textBox2.ScrollBars = ScrollBars.Both;
//Setup events that listens on keypress
textBox1.KeyDown += TextBox1_KeyDown;
textBox1.KeyPress += TextBox1_KeyPress;
textBox1.KeyUp += TextBox1_KeyUp;
}
// Handle the KeyUp event to print the type of character entered into the control.
private void TextBox1_KeyUp(object sender, KeyEventArgs e)
{
textBox2.AppendText( $"KeyUp code: {e.KeyCode}, value: {e.KeyValue}, modifiers: {e.Modifiers}" + "\r\n");
}
// Handle the KeyPress event to print the type of character entered into the control.
private void TextBox1_KeyPress(object sender, KeyPressEventArgs e)
{
textBox2.AppendText( $"KeyPress keychar: {e.KeyChar}" + "\r\n");
}
// Handle the KeyDown event to print the type of character entered into the control.
private void TextBox1_KeyDown(object sender, KeyEventArgs e)
{
textBox2.AppendText( $"KeyDown code: {e.KeyCode}, value: {e.KeyValue}, modifiers: {e.Modifiers}" + "\r\n");
}
}
Public Class Form2
' Handle the KeyDown event to print the type of character entered into the control.
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown
TextBox2.AppendText($"KeyDown code: {e.KeyCode}, value: {e.KeyValue}, modifiers: {e.Modifiers}" + vbCrLf)
End Sub
' Handle the KeyPress event to print the type of character entered into the control.
Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
TextBox2.AppendText($"KeyPress keychar: {e.KeyChar}" + vbCrLf)
End Sub
' Handle the KeyUp event to print the type of character entered into the control.
Private Sub TextBox1_KeyUp(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyUp
TextBox2.AppendText($"KeyUp code: {e.KeyCode}, value: {e.KeyValue}, modifiers: {e.Modifiers}" + vbCrLf)
End Sub
End Class
Commenti
Gli eventi chiave si verificano nell'ordine seguente:
Per gestire gli eventi della tastiera solo a livello di modulo e non consentire ad altri controlli di ricevere gli eventi della tastiera, impostare la KeyPressEventArgs.Handled proprietà nel metodo di gestione degli eventi del KeyPress modulo su true
. Alcuni tasti, ad esempio TAB, RETURN, ESC e freccia, vengono gestiti automaticamente dai controlli . Per fare in modo che queste chiavi generino l'evento, è necessario eseguire l'override KeyUp del IsInputKey metodo in ogni controllo del modulo. Il codice per l'override di IsInputKey deve determinare se uno dei tasti speciali viene premuto e restituisce un valore di true
.
Per ulteriori informazioni sulla gestione degli eventi, consultare gestione e generazione di eventi.