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

ASP.NET Discussion :

[1.1] Recupérer des textbox créé dynamiquement dans un DataGrid


Sujet :

ASP.NET

  1. #1
    En attente de confirmation mail
    Inscrit en
    Août 2007
    Messages
    174
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 174
    Points : 133
    Points
    133
    Par défaut [1.1] Recupérer des textbox créé dynamiquement dans un DataGrid
    :hello:

    J'ai besoin par ligne de mon DataGrid d'autant de TextBox + RadioButtonList que j'ai de lignes dans ma table liée.

    Lors de l' ItemDataBound je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    					int i = 1;
    					foreach (CvrShippingContainer cvrContainer in cvr.ShippingContainerList)
    					{
    						TextBox t = new TextBox();
    						t.ID = "container" + i;
    						t.Text = cvrContainer.NumberRef.ToString();
    						e.Item.Cells[7].Controls.Add(t);
    						RadioButtonList rbl = GetRadioButtonContainerType();
    						rbl.ID = "rbl" + i;
    						e.Item.Cells[7].Controls.Add(rbl);
    						rbl.Items.FindByValue(cvrContainer.Capacity.ToString()).Selected = true;
    						i++;
    					}
    Ma ligne edité affiche bien mes TextBox + Rbl avec des données correctes.

    Le souci est quand j'update la ligne je ne retrouves pas mes Controls

    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
    17
    18
     
    			//Retrouves tous les containers
    			foreach (Object o in ((XamuCustomDataGrid)source).Items[e.Item.ItemIndex].Controls)
    			{
    				TextBox t = o as TextBox;
    				if (t != null)
    				{
    					CvrShippingContainer cvrCon = new CvrShippingContainer();
    					//Retrouves la capacité / au textbox
    					RadioButtonList rbl = e.Item.Cells[7].FindControl(t.ID.Replace("container","rbl")) as RadioButtonList;
    					if (rbl != null)
    					{
    						cvrCon.Capacity = int.Parse(rbl.SelectedValue);
    						cvrCon.NumberRef = t.Text;
    						myNewShippingHeader.ShippingContainerList.AddShippingContainer(cvrCon);
    					}
    				}
    			}
    Comment faire pour récuperer ces Controls
    J ai essayé avec le source ou avec e, les 2 ne voyent pas de controls

    Merci

  2. #2
    Membre actif Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Points : 248
    Points
    248
    Par défaut
    Salut,

    Est-ce que sur l'update tu repasses dans ta méthode de databound? Si non, c'est normal que tu ne retrouve pas tes contrôles, puisqu'ils sont créés dans cette méthode.

    Si oui, essaie de regarder les contrôles présents dans ta cellule en faisant e.Item.Cells.Controls...

Discussions similaires

  1. Recupération de TextBoxes Créés Dynamiquement
    Par Flox06 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 20/02/2008, 15h04
  2. recuperer des informations depuis des textboxs pour remplir dans ma bd
    Par bruce207 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 30/12/2007, 11h18
  3. Réponses: 16
    Dernier message: 29/10/2007, 16h58
  4. créer des variables javascript dynamiquement dans un code php
    Par lau_the_raptor dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 14/07/2007, 12h10
  5. Gérer des web controle dynamiquement dans un aspx
    Par jeromechezgdf dans le forum ASP.NET
    Réponses: 8
    Dernier message: 20/06/2007, 16h46

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