Séparateur décimal & DataGrid [VB.NET] - VB/VBA/VBS - Programmation
Marsh Posté le 23-05-2006 à 13:15:09
Bonjour
Dans tes paramètres Windows (options regionales), le separateur est bien un "." ?
Marsh Posté le 23-05-2006 à 14:21:18
ReplyMarsh Posté le 23-05-2006 à 14:27:34
Pilaon a écrit : Salut acecel, |
Ton problème vient de là, ton appli utilise les paramètres du système.
Change ce symbole dans windows, et tu pourras utiliser le "."
Ou alors il faut gerer les deux dans l'application, sur le Form_KeyPress (ou KeyDown), remplacer le code renvoyé par celui que tu souhaites.
Marsh Posté le 23-05-2006 à 14:58:30
Oui mais le problème c'est que le datagrid ne veut pas du point justement, mais uniquement de la virgule. J'ai fixéle séparateur par défaut en le passant à "," dans l'application (et seulement dans l'application) mais ca ne change rien
Pour ce qui est d'intercepter la touche, j'ai déjà essayé mais c'est en lecture seule
J'ai déjà fait ça sur des textboxes
Code :
|
Mais pour le datagrid, je ne trouve pas les bons évènements
Marsh Posté le 23-05-2006 à 16:26:09
Fait le sur ta form, en verifiant que le contrôle actif est bien ton datagrid
Marsh Posté le 26-05-2006 à 09:33:01
Est-ce que quelqu'un aurait un exemple, parceque j'ai essayé toutes les possibilités d'événements -> sans succès
help please
Marsh Posté le 26-05-2006 à 12:25:33
l'affichage d'un flottant en chaine de caractères dépend de la culture du thread courant et pas d'évenements, du SGBD ou de quoi que ce soit d'autre. l'affichage du point peut se faire en utilisant InvariantCulture, qui représente une culture anglaise, mais associée à aucun pays.
Code :
|
Marsh Posté le 26-05-2006 à 14:28:59
Harkonnen a écrit : l'affichage d'un flottant en chaine de caractères dépend de la culture du thread courant et pas d'évenements, du SGBD ou de quoi que ce soit d'autre. l'affichage du point peut se faire en utilisant InvariantCulture, qui représente une culture anglaise, mais associée à aucun pays.
|
Merci beaucoup, ca fonctionne très bien.
J'avais manipulé du code semblable mais ca n'avait pas marché
Marsh Posté le 26-05-2006 à 15:00:10
Re ,
Y-a-t'il un moyen d'utiliser un évènements KeyPress dans une cellule d'un Datagrid et non sur le datagrid lui même ?
merci
Marsh Posté le 26-05-2006 à 15:34:50
une cellule de datagrid n'est rien d'autre qu'un Textbox. tu dois donc créer ton propre DataGridColumnStyle et lui assigner ton GridColumnStyle pour ajouter un event à la cellule que tu souhaites !
Code :
|
Marsh Posté le 26-05-2006 à 17:04:04
Harkonnen a écrit : une cellule de datagrid n'est rien d'autre qu'un Textbox. tu dois donc créer ton propre DataGridColumnStyle et lui assigner ton GridColumnStyle pour ajouter un event à la cellule que tu souhaites !
|
Merci, je vais essayer
Marsh Posté le 23-05-2006 à 11:20:51
Bonjour,
j'utilise un datagrid qui est alimenté par un DataSet. Dans ce datagrid, j'ai une colonne "Montant" qui est de type numérique et dans laquelle j'aimerai pouvoir faire des modifications. Le problème vient du séparateur décimal: lorsque je saisis un montant avec une virgule, j'aimerai pouvoir utiliser la touche "." du pavé numérique. Hors si je l'utilise, le datagrid ne prend pas en compte les modifications et remet systématiquement la valeur précédente (avant les modifications). Je pense que ca vient du fait que le champ montant de la table que j'utilise (sous oracle 8i) n'accepte que les "," d'ailleurs si je saisis une virgule tout fonctionne correctement.
J'ai essayé pas mal de chose mais rien n'a résolu mon problème (chgt du séparateur décimal, événement datagrid...)
Le format de ma colonne est du type "###### ##0.00".
Est-ce que quelqu'un serai capable de me dire comment utiliser le point du pavé numérique, et qu'il soit reconnu comme une virgule dans la cellule courante de mon datagrid ?? Ou bien une autre méthode mais en agissant seulement sur le datagrid
Merci beaucoup d'avance