Bonjour,

J'ai une maskedtextbox de format hh:mm.
Pour commencer l'utilisateur saisit une heure. Si cette heure n'est pas valide , l'utilisateur est avertit et doit en resaisir une ... Mais c'est à ce moment que je voudrais recharger les dernières valeurs correctes après avoir mis le message d'avertissement.
J'ai essayé quelque chose , mais je ne peux pas me servir de la variable "sauv1" dans laquelle je stocke une valeur correcte.

Voici mon code ( dans lequel je rajoute un ":" pour pouvoir traiter chaque partie de mon hh:mm).

Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
 string value = TBtpsLav.Text;
            // Test pour définir  la maskedtextbox avec des valeurs max hh:mm
            try
            {
                for (int i = 0; i < 1; i++)
                {
                    if ((value.Length / 2) == 2)
                    {
                        value = (value.Substring(0, 2)) + ":" + (value.Substring(2, 2));                      
 
                        //int s = 0;
                        String[] tabValue = new String[1];
                        tabValue = value.Split(':');
                        string val1 = tabValue[0]; //string val1 = tabValue[s]; 
                        string val2 = tabValue[1];//string val2 = tabValue[s + 1];
                        int sauv1 = 0;
 
                        if (Convert.ToInt32(val1) < 24)
                        {
                            sauv1 = Convert.ToInt32(val1);
                        }
                        else
                        {
                            MessageBox.Show("Erreur Format");
                            (sender as Control).Text = val1; //L'idéal ça serait de pouvoir charger la dernière valeur correcte ici                        
                        }
                        if (Convert.ToInt32(val2) >= 60)
                        {
                             MessageBox.Show("Erreur Format");
 
                            (sender as Control).Text = "0000";
                        }                      
                    }
                }
            }