Validation de date

Résolu
cs_warzet Messages postés 99 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 25 juillet 2013 - 25 janv. 2013 à 10:22
cs_warzet Messages postés 99 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 25 juillet 2013 - 28 janv. 2013 à 08:14
Bonjour à tous,
dans le cadre d'une application, j'ai fait ceci pour être sur d'avoir un numérique
                                    if (float.TryParse(this.txtCoefficient.Text, out temp))
                                    {
                                        temp = float.Parse(this.txtCoefficient.Text);
                                        if (temp < 0)
                                        {
                                            MessageBox.Show("Le Coefficient doit être \nPositif supérieur à 0", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                                            this.txtCoefficient.Text = " ";
                                            this.txtCoefficient.SelectAll();
                                            this.txtCoefficient.Focus();
                                        }
                                        else
                                        {
                                            //MonCode
                                        }//Coefficcient Positif non nul
                                    }//Le Coefficient est un numérique
                                    else
                                    {
                                        MessageBox.Show("Vous n'avez pas entré\nun nombre pour le Coefficient", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                                        this.txtCoefficient.Text = " ";
                                        this.txtCoefficient.Focus();
                                    }


Ma question est savoir comment je devrais me prendre s'il s'agit d'une date?
Merci
A voir également:

4 réponses

billou_13 Messages postés 860 Date d'inscription jeudi 4 mars 2004 Statut Membre Dernière intervention 19 août 2014 29
25 janv. 2013 à 18:12
Bonsoir,

Je voterai aussi pour l'utilisation du DateTime.TryParse(..) à la place de l'utilisation d'une RegEx.
Tout ça partant du principe que plus le framework me déleste d'un travail, plus je choisis cette voie

Tu as plein d'exemple en bas de la page MSDN: ici.

J'ajouterai une petite remarque sur ton code:
Ta ligne:
temp = float.Parse(this.txtCoefficient.Text);

est de trop car la ligne:
float.TryParse(this.txtCoefficient.Text, out temp)

renseigne déjà la variable temp (c'est pour cela qu'elle est passé en tant que paramètre de sortie.
Tu peux donc supprimer le float.Parse.

Bon week-end,

Billou_13

--------------------------------------------------------------------
Connaître la réponse est une chose, savoir pourquoi en est une autre
---------------------
3
dodo7263 Messages postés 614 Date d'inscription mercredi 10 septembre 2008 Statut Membre Dernière intervention 9 février 2017 6
25 janv. 2013 à 12:56
Salut,

Pour tester le format date ou même les caractères numériques, je te conseille de regarder du côté des regex (regular expression).
Relativement facile à comprendre et je trouve très efficace.

@++

SD
0
Whismeril Messages postés 19020 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 15 avril 2024 656
25 janv. 2013 à 16:24
Bonsoir,

je rejoins Dodo mais à moitié, les regex c'est trés éfficace, mais au début j'en ai un peu bavé.
Il y a ce code qui m'aide bien.

Sinon tu as DateTime.TryParse().



Whismeril
0
cs_warzet Messages postés 99 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 25 juillet 2013 1
28 janv. 2013 à 08:14
Merci à vous tous qui avez eu l'obligeance de me répondre, je vérifie tout et je vous en informe
0
Rejoignez-nous