2
J'ai mon propre contrôle TextBox personnalisé, qui hérite de System.Windows.Forms.TextBox. J'ai surchargé la méthode OnKeyDown, car je veux sélectionner le contrôle précédent ou suivant si l'utilisateur appuie sur les touches haut ou bas.Ligne actuelle dans une zone de texte multiligne
Protected Overrides Sub OnKeyDown(ByVal e As System.Windows.Forms.KeyEventArgs)
MyBase.OnKeyDown(e)
If e.KeyCode = Keys.Up Then
If Not Multiline Then
Me.FindForm().SelectNextControl(Me, False, True, True, True)
Else
'TODO: If the current line is the first one, select the previous control
End If
ElseIf e.KeyCode = Keys.Down Then
If Not Multiline Then
Me.FindForm().SelectNextControl(Me, True, True, True, True)
Else
'TODO: If the current line is the last one, select the next control
End If
End If
End Sub
Dans une zone de texte multiligne, quelle est la meilleure façon de savoir si je suis dans la première ou la dernière ligne?
Merci beaucoup
De même, assurez-vous de gérer le trait de touche afin de ne pas appliquer deux fois les réglages e.Handled = True pour les flèches haut et bas. –