Bonjour,
Voici je pense un des problèmes les plus casse-pied qui puisse exister :
Le traitement des virgules ou point décimaux
Exemple :
dans un champ de DataGridView un utilisateur peut introduire un filtre numerique dont l'operande est un float
> 1.2
< 2,3
Pour permettre la saisie d'operateurs je laisse le champs en type texte
Et a un moment je construit le filtre que j'utilise sur un dataview
Genre
Et c'est la que les ennuis commencentfRowFilter=string.Format("Valeur={0}",value);
Si la valeur est 1.2 en texte c'est bon
Si la valeur est 1,2 en texte (avec virgule) le filtre hurle
C'est pas grave me dis-je, je vais d'abord faire un TryParse pour convertir en float et puis je ferais un String.Format du float
Mais là j'ajoute DEUX problèmes
1- Si la valeur de base est 1.2 le tryparse me rends 12.0
2- Si la valeur est 1,2 le tryparse rends 1.2 et si je fait un string.format de la valeur float 1.2 il ponds 1,2 : de nouveau le filtre hurle
En définitive faute de mieux je continue a tout traiter en string a coup de .Replace pour convertir les éventuelles virgules en point
Et je n'ai franchement pas envie de faire une gestion d'event capilotractée pour analyser a la volée ce que l'utilisateur introduit dans le champs du dgv
Une meilleure suggestion
Merci.
Partager