C# - Vérifier les controls d'un formulaire

sbastien60 Messages postés 91 Statut Membre -  
sbastien60 Messages postés 91 Statut Membre -
Bonjour,

J'ai créé un formulaire avec des ComboBox, TextBox et BoutonRadio.

Voici la liste de mes contrôles :

CB_Categories
CB_SousCategorie
TXT_LibelleMat
TXT_DateAquisition
TXT_Année
TXT_Valeur
RB_Oui
RB_Non
CB_Salle

Ce formulaire me permet d'insérer du matériel dans la base de données en choisissant une catégorie et sous catégorie de matériel etc.
Les boutons radio Oui/Non devraient me faire ouvrir un autre formulaire d'insertion de document à la validation.

J'aimerai vérifier que tous les contrôles soient renseigné quand je clique sur Valider.

Ma réflexion a été la suivante :

Je créé une fonction VerifControl(nom_du_control) qui va vérifier si le ontrol a été renseigné.
Ensuite une deuxième VerifTout() qui va boucler VerifControl pour chaque control présent.

Or plusieurs problèmes se posent :
- Mes contrôles ne sont pas tous de même type
- Comment passer un nom de contrôle en paramètre ?
- Comment vérifier qu'un des deux boutons radio a été sélectionné ?

Devrais-je plutôt assigner des paramètres par défaut ? Au risque que cela créé des erreurs de saisie (mauvaise catégorie etc.) ?

Merci d'avance ! :D



--
~ J'ai réussi car je ne savais pas que c'était impossible ~

1 réponse

  1. sbastien60 Messages postés 91 Statut Membre 7
     
    Voici mon code actuel en une seule fonction (En effet j'aurai aimé le découper en plusieurs fonction pour la propreté et la légèreté !)

            private bool VerificationTout() //Retourne True quand tous les champs sont renseignés
            {
                bool resultat=false;
                int CompteControl = 0; //Incrémentation de 1 pour chaque control vérifié et validé
    
                //Vérification BoutonRadio
                if ((RB_Oui.Checked = true) || (RB_Non.Checked = true))
                    CompteControl++;
    
                //Vérification des TextBox
                if (TXT_Année.Text != "") //TXT_Année
                    CompteControl++;
                if (TXT_LibelleMat.Text != "") //TXT_LibelleMat
                    CompteControl++;
                if (TXT_DateAquisition.Text != "") //TXT_DateAquisition
                    CompteControl++;
                if (TXT_Valeur.Text != "") //TXT_Valeur
                    CompteControl++;
    
                //Vérification des ComboBox
                if (CB_Categories.SelectedIndex != 0) //CB_Categories
                    CompteControl++;
                if (CB_SousCategorie.SelectedIndex != 0) //CB_SousCategorie
                    CompteControl++;
                if (CB_Salle.SelectedIndex != 0) //CB_Salle
                    CompteControl++;
    
                //Compte les contrôles validés
                if (CompteControl == 8)
                    resultat = true;
    
                return resultat;
            }
    


    Qu'en pensez vous ?
    1