begin process at 2008 09 06 09:20:12
1 237 663 membres
60 nouveaux aujourd'hui
14 313 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : application windows C# [ Windows / Formulaire / Winforms / Controls ] (krim43)

application windows C# le 02/07/2008 15:10:05

krim43
bonjour tout le monde voila mon problème:
Ecrire un programme permettant d'afficher un message de bienvenue à l'utilisateur qui entre son prénom. Si la zone de saisie est vide, le programme enverra un message d'erreur. Si le prénom possède un caractère différent de l'alphabet (a à z) et different de " -"ou " ' ", le programme enverra un message d'erreur.

je vous affiche ce que j'ai fait, je coince juste pour ajouter la condition qui permet de verifier le "-" et le " ' ":



private void btValider_Click(object sender, EventArgs e)
        {
            if (txtPrenom.Text == "")
            {
                MessageBox.Show("Saisie obligatoire du prenom", "Erreur de saisie", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                int lg = txtPrenom.Text.Length;
                string pre = txtPrenom.Text;
                string prebas = pre.ToLower();
                int i;
                for (i = 0; i < txtPrenom.Text.Length; i++)
                {
                    if ((prebas[i] < 'a') || (prebas[i] > 'z'))
                    {
                        int num = i + 1;
                        MessageBox.Show("Caractère  " + prebas[i] + "  interdit en position " + num + ".", "Erreur de saisie", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        txtPrenom.Focus();
                        return;
                    }
                    else
                    {
                        int num = i + 1;
                        MessageBox.Show("Caractère N°" + num + " : " + pre[i], "Décomposition du prénom", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                    lblResultat.Text = "Bonjour !  " + txtPrenom.Text;
                }
            }
        }


        private void Form1_Load(object sender, EventArgs e)
        {
        }
        private void btQuitter_click(object sender, EventArgs e)
        {
            Application.Exit();
        }
    }
}

Re : application windows C# le 02/07/2008 15:37:03

Liverion
Réponse acceptée !
Regarde avec les expressions regulières (RegEx) , tu devrais trouver ton bonheur.

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!

Re : application windows C# le 02/07/2008 16:13:35

krim43
j'ai lu des choses sur ta fonction.
j'ai compri a peu pres ce que je doit faire

Regex  maRegexp = new Regex("^[a-z]+$");
                  string  maChaine = "Salut à tous !!";
                  bool    regOK    =maRegexp.IsMatch(maChaine);

                  if (regOK)
                        MessageBox.Show("ok");
                  else
                        MessageBox.Show("pas ok");

mais j'arrive pas a l'integrer dans mon cas


Re : application windows C# le 02/07/2008 16:19:20

Liverion
Réponse acceptée !
ben tu marques dans ta RegEx que tu prends tous les caractères que tu veux, alors le IsMatch() renverra false, comme ca tu peux detecter. Pour la regex en particulier, je sais pas ce que ca donnerait, j'en ai jamais fait :)

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!

Re : application windows C# le 02/07/2008 22:04:26

Bidou
(Admin CS)
Réponse acceptée !
Salut,
Tu peux essayer le code suivant:

publicstaticbool IsUsernameValid(string username)
{
  
if (!string.IsNullOrEmpty(username))
   {
     
returnRegex.Match(username, @"^([a-zA-Z\-']+)$").Success;
   }
  
returnfalse;
}


-My Blog-


Classé sous : text, int, erreur, saisie, txtprenom

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS