dans mon code qui devrait fonctionner j'essaie de remplacer la saisie d'un point dans mon textbox par une virgule
" Private Sub TXT_CONSO_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TXT_CONSO.KeyPress
If e.KeyChar = "." Then
Replace(TXT_CONSO.Text, ".", ",")
End If
End Sub"
Ce textbox est ensuite converti en double pour un calcul
Mon code en mode débogage intercepte le fait qu'un point est saisi passe au replace mais la rien ne se passe
Merci pour votre aide
le top du top c'est d'écrire dans l'evenement press key du textbox correspondant le code suivant
Private Sub TXT_CONSO_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TXT_CONSO.KeyPress e.KeyChar = Replace(e.KeyChar, ".", ",") End Sub
Avant de modifier le séparateur décimal il faudrait vérifier si c'est
bien une virgule
dim flagvirgule as boolean If My.Application.Culture.NumberFormat.NumberDecimalSeparator = "," Then flagvirgule = true else flagvirgule = false End If
et ensuite sers toi du flagvirgule
Private Sub TXT_CONSO_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TXT_CONSO.KeyPress if flagvirgule then e.KeyChar = Replace(e.KeyChar, ".", ",") end if End Sub