/ / Стрелките надолу не активират KeyPress Event - .net, winforms

Стрелките надолу не задействат събитието KeyPress - .net, winforms

Някой знае ли защо KeyPress събитието не се уволнява, когато потребителят натисне стрелка надолу?

Отговори:

14 за отговор № 1

Според документацията на събитието KeyPress (при условие че използвате WinForms):

Събитието KeyPress не е повдигнато от нехарактерни ключове; както и да е нехарактерните ключове вдигат KeyDown и KeyUp събития.

Клавишът със стрелка надолу не е „бутон за символи“, така че това събитие не трябва да бъде повдигнато за него.


1 за отговор № 2

Използвайте KeyDown вместо това

Public Class Form1
Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
Debug.WriteLine(e.KeyData.ToString + " KeyDown")
End Sub

Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
Debug.WriteLine(e.KeyChar.ToString + " KeyPress")
End Sub
End Class