Vider les zones de text dynamique [Résolu]

Messages postés
103
Date d'inscription
dimanche 20 mars 2005
Dernière intervention
30 décembre 2017
- - Dernière réponse : said_dias_01
Messages postés
103
Date d'inscription
dimanche 20 mars 2005
Dernière intervention
30 décembre 2017
- 7 mai 2011 à 23:59
Salut ,

je veux de créer une class pour vider le contenu (les zones de Text) de n'importe q formulaire de mon application

voila le contenu de ClassVider
public class ClassVider
{
public void ViderChamps(Form f)
{
foreach (Control c in f.Controls)

if (c is TextBox) c.Text = string.Empty;
}

}
--------------------------------------
et voila le click sur button nouveau

public partial class F_Banque : Form
{
ClassVider CsVider= New ClassVider();

private void b_nouveau_Click(object sender, EventArgs e)
{
F_ville f = new F_Banque();
this.CsVider.ViderChamps(f);
}
}
-----------------------------------------------

N'efface rien pourquoi ??????????????
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
441
Date d'inscription
mardi 2 décembre 2003
Dernière intervention
22 mai 2012
3
Merci
Salut,

De toutes façons, à l'appel de la méthode ViderChamps() il ne faut pas réinstancier un objet F_Banque mais lui passer l'instance en cours...

Ce qui te donnerai :
private void b_nouveau_Click(object sender, EventArgs e)
{
    this.CsVider.ViderChamps( this );
}


à ce moment tu attaques les Controls du formulaire en cours...
Cela devrait fonctionner pour les Textbox directement mises sur ton formulaire
Il te reste à attaquer celles positionnées dans des Conteneurs (Panel, TabPage, ...)

Bon dev ;)

Merci LUDINSKI 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 104 internautes ce mois-ci

Commenter la réponse de LUDINSKI
Messages postés
1540
Date d'inscription
lundi 26 mai 2003
Dernière intervention
1 août 2013
0
Merci
Salut,

instControl.Controls retourne la collection des contrôles contenus dans instControl, mais pas ceux que eux-même contiennent. En gros cet accesseur ne te renvoie pas la totalité des contrôles en profondeur. Il te faut faire une fonction récursive pour parcourir tous tes contrôles en profondeur.
Commenter la réponse de cs_jopop
Messages postés
103
Date d'inscription
dimanche 20 mars 2005
Dernière intervention
30 décembre 2017
0
Merci
1000 Merci ça marche bien LUDI
Commenter la réponse de said_dias_01

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.