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 :

VBNET : Agir sur une collection de contrôles ?


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 74
    Points : 70
    Points
    70
    Par défaut VBNET : Agir sur une collection de contrôles ?
    Bonjour,

    J'ai des contrôle de type textbox sur une form.
    Je souhaite nettoyer leur contenu, pour cela je fais pour l'instant un bête et méchant :
    txtSMTPServer.Text = ""
    TextBox1.Text = ""
    txtFrom.Text = ""
    txtFromDisplayName.Text = ""
    txtTo.Text = ""
    txtSubject.Text = ""
    ... etc

    Y a t il un moyen d'agir sur le groupe de controle afin de nettoyer leur contenu en une seule instruction ? Si oui, par extension, comment monter un groupe de contrôles ?
    Je viens de faire quelques recherches mais je n'ai rien de probant ...

    Merci pour votre aide.
    Vincent

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Tu peux faire une boucle sur la Collection Controls de ta form et tu regardes si le type du cntrole sur lequel tu es se trouve être un type TextBox.
    Si oui, tu effaces son contenu.

    Un peu du genre:

    foreach(Control ctr in this.Controls)
    {
    if (ctrl is TextBox)
    {
    ((TextBox)ctrl).Text = string.Empty;
    }
    }


    A+


    Edit: Je t'ai mis du code C# mais le principe reste le même

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 74
    Points : 70
    Points
    70
    Par défaut VBNET : Agir sur une collection de contrôles ? RESOLU
    Thomas, merci, très bonne suggestion.
    Exactement ce qu'il me fallait.
    Vincent

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 74
    Points : 70
    Points
    70
    Par défaut
    Le codeVBNET , pour ceux qui rencontreront le même souci :

    For Each ctr As Control In Me.Controls
    If TypeOf ctr Is System.Windows.Forms.TextBox Or TypeOf ctr Is System.Windows.Forms.RichTextBox Then
    ctr.Text = ""
    End If
    Next

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

Discussions similaires

  1. Instancier en itérant sur une collection abstraite
    Par Ahellix dans le forum Langage
    Réponses: 4
    Dernier message: 06/09/2007, 14h26
  2. tri alphabétique sur une collection
    Par samtheh dans le forum VBA Access
    Réponses: 6
    Dernier message: 18/06/2007, 14h50
  3. Probleme de scope sur une collection
    Par ataya dans le forum Struts 1
    Réponses: 10
    Dernier message: 23/02/2007, 19h19
  4. Réponses: 1
    Dernier message: 25/10/2006, 13h41
  5. [Struts] <logic:iterate> sur une collection d objets c
    Par trax020 dans le forum Struts 1
    Réponses: 2
    Dernier message: 12/05/2005, 00h11

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