Récupérer la valeur d'un contrôle

mezianiomar Messages postés 2 Date d'inscription dimanche 7 juin 2009 Statut Membre Dernière intervention 9 avril 2010 - 9 avril 2010 à 12:19
cs_vpoyo Messages postés 363 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 20 avril 2010 - 9 avril 2010 à 14:37
Bonjour,
Comment récupérer par exemple le texte d'un "TextBoxe" affiché dynamiquement sur une page.
NB: le texte est saisie après que la page est chargée.

Merci d'avance

3 réponses

cs_vpoyo Messages postés 363 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 20 avril 2010 6
9 avril 2010 à 13:56
Bonjour,

tu peux parcouris la liste des controles de ton IHM (this.Controls)
jusqu'à retrouver le controle souhaité.
sinon tu peux stocker le/les controle(s) dans une variable/tableau.

PS: le texte est saisie après que la page est chargée << ca semble un peu normal non ?

Cordialement,
Vincent
0
mezianiomar Messages postés 2 Date d'inscription dimanche 7 juin 2009 Statut Membre Dernière intervention 9 avril 2010
9 avril 2010 à 14:23
Peut être je me suis mal expliqué.
Voici un exemple de code qui met en évidence ce problème:
le code en soi fonctionne bien. mais je veux modifier le texte de l'élément de saisie "textBoxe" puis pouvoir stocker ce texte une fois je clique sur le bouton actualiser.
Et puisque le textBoxe est chargé dynamiquement, alors je n'y pas accès. enfin pour le moment parce que je ne trouve pas de solution...SOS

// code de la représentation graphique



































// code fonctionel
private TextBox tbDynamic;
protected void btn1_Click(object sender, EventArgs e)
{
string test = (string)Session["Donnee1"];
Label lblDynamic = new Label();
lblDynamic.Width = Unit.Pixel(200);
lblDynamic.Height = Unit.Pixel(15);
lblDynamic.Text = test;
Panel1.Controls.Add(lblDynamic);


}

protected void btn2_Click(object sender, EventArgs e)
{
Label lblDynamic = new Label();
lblDynamic.Width = Unit.Pixel(100);
lblDynamic.Height = Unit.Pixel(15);
lblDynamic.Text = "Dynamic Label :";


tbDynamic = new TextBox();
tbDynamic.ID = "textBoxeId";
tbDynamic.Width = Unit.Pixel(100);
tbDynamic.Height = Unit.Pixel(15);
tbDynamic.Text = "Dynamic textBoxe :";
Session["Donnee1"] = "Dynamic textBoxe :";
Panel1.Controls.Add(lblDynamic);
Panel1.Controls.Add(tbDynamic);

}
0
cs_vpoyo Messages postés 363 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 20 avril 2010 6
9 avril 2010 à 14:37
pour récupérer la valeur des textbox dans btn1_click()
tu boucles sur les controles de ton panel

Textbox tbx;
foreach(Control ctrl in Panel1.Controls)
{
tbx = ctrl as Textbox;
if (tbx != null) //si le control est un label, alors tbx sera null
{
//faire ce que tu veux pour chaque textbox
}
}

attention ta variable tbDynamic devrait être déclarée dans btn2_click
0
Rejoignez-nous