comment on peut savoir en vb.net si un nombre saisi sur un textbox est un decimal format "." ou "," par exemple 4,53 ou 4.53
merci
Version imprimable
comment on peut savoir en vb.net si un nombre saisi sur un textbox est un decimal format "." ou "," par exemple 4,53 ou 4.53
merci
tu peux essayer de convertir la chaine en nombre :
Dim d as Double
d = Double.Parse(textBox1.Text)
Si ca lève une exception, c'est que le texte n'est pas au bon format.
Sinon tu peux utiliser un MaskedTextBox pour forcer l'utilisateur à saisir un nombre
je suis stagiaire dans une entreprise et les gens ici sont habitués à saisir des valeurs avec le format "." donc pour faire des traitements sur ces valeurs je dois les reformater en "," !
à toi
s = "2.5"
s2 = s.Replace('.', ',')
ou qqch comme ca...
replace c en javascript
quelqu'un peut m'aider ?? => remplacer par exemple 4.75 en 4,75
replace existe aussi en vb.net il est dans l'espace de nom microsoft.visualbasic
ton appli ne fonctionnera pas si un utilisateur a été changé les parametres régionnaux de windows et changé le séparateur de décimal (rare certes)
si tu veux gérer ca tu peux le connaitre (cherche sur ce forum c'est deja passé comme question)
ensuite tu peux aussi intercepter l'evenement keypress et transformer le . ou , (ou l'inverse)
tu peux meme faire un controle mieux pour éviter par exemple qu'il y a 2 , dans un nombre
ou si tu veux pas t'enbeter, sur l'evenement textchanged
if not isnumeric(textbox.text) then
_ verouillage du bouton valider par exemple
end if
je ne peux pas forcer l'utilisateur, je dois lui laisser le choix de saisir soit avec un . ou avec une ,
à vous
Force la culture au niveau de ton application à l'aide de:
dans le web.configCitation:
<globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="FR-BE">
Dès lors, tu sais comment sont formatés les nombres (plus exactement comment ils devraient :))
Ensuite tu utilises le .Replace(',', '.'); (ou l'inverse selon la culture choisie)
Pour plus d'infos, tu peux lire http://ditch.developpez.com/aspnet/tome5/
Ditch à quoi sert
<globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="FR-BE">
?
Conclusion : j'ai crée un fichier web.config dans le même répertoire qui contient :
<configuration>
<system.web>
<globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="FR-BE">
</system.web>
</configuration>
Cela suffit ?
super !! maintenant il prend en charge le "." merci !!:lol: