IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

boucle sur un ensemble de controls


Sujet :

Windows Forms

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Points : 30
    Points
    30
    Par défaut boucle sur un ensemble de controls
    Bonjour,

    Je souhaiterais verifier que la propriete text de mes controls est bien differente de "" avant de proceder a l'execution de mon code. je fais donc:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
                foreach (Control control in this.Controls){
                    if (control.Text == ""){
                        MessageBox.Show(control.Name + " is empty! Fill it",
                            "Missing Item",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);
                        break;
                    }
                }
    mais je voudrais isoler cette boucle aux seuls controls disposant d'une propriete Text. J'ai par exemple un listbox sur lequel je ne veux pas executer la boucle. Comment faire?

    Plutot que de faire in this.Controls, j'avais songe a faire une sorte d'enumeration contenant un certain nombre de controls uniquement, mais je ne sais pas si c'est possible.

    Merci pour votre aide!

  2. #2
    Membre régulier
    Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 99
    Points : 115
    Points
    115
    Par défaut
    C'est une technique assez barbare.

    Il sera préférable que tu utilises tes propres types de composant, héritant de ceux du framework et implémentant une interface particulière.
    Ce serait plus propre.

    Sinon, le code suivant devrais répondre à ton besoin.
    Code : 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
     
            public void Test()
            {
                foreach (Control control in Controls)
                {
                    if (control.GetType() != typeof (ListBox))
                    {
                        if (string.IsNullOrEmpty(control.Text))
                        {
                            MessageBox.Show(control.Name + " is empty! Fill it",
                                            "Missing Item", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            break;
                        }
                    }
                }
            }
    C'est ni plus ni moins qu'un gros switch case avec tous le mal qu'on peut en penser.

    En espérant que cela t'aide quand même

  3. #3
    Nouveau membre du Club
    Inscrit en
    Janvier 2009
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 40
    Points : 30
    Points
    30
    Par défaut
    ca marche tres bien

    merci beaucoup!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Boucle FOr sur un ensemble de valeurs
    Par Daniela_ dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/11/2013, 16h35
  2. Boucle sur controles et .tag associé
    Par pleskyd dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 14/10/2011, 17h13
  3. [AC-2003] boucle sur le nom de controles
    Par piere42 dans le forum IHM
    Réponses: 1
    Dernier message: 01/04/2009, 12h17
  4. Procédure Identique sur Ensemble de Controls Perso
    Par Danyel dans le forum VB.NET
    Réponses: 3
    Dernier message: 07/08/2007, 12h24
  5. [C#] Boucle sur les controles
    Par stailer dans le forum Windows Forms
    Réponses: 3
    Dernier message: 10/05/2006, 08h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo