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 :

Remplir une colonne DropDownList d'un GridView


Sujet :

ASP.NET

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2011
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Octobre 2011
    Messages : 255
    Points : 193
    Points
    193
    Par défaut Remplir une colonne DropDownList d'un GridView
    Bonjour à tous,

    J'ai créer un GridView pour ajouter des produits a une commande.

    Je liste les produits et j'ai rajouter une colonne : DropDownList pour choisir une quantité a ajouter.

    Mais je ne sais pas comment accéder a ce DDL.

    Après mes rechercher voici mon code, mais ma liste reste désespérément vide.

    je créer une méthode pour remplir mon gridView
    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
    19
    20
    21
    22
    23
    24
     
     public DataTable ListProdFourni()
        {
            // Créetion de datatable pour lister les différents produits
            DataTable dtProdFourni = new DataTable();
            dtProdFourni.Columns.Add("idprod");
            dtProdFourni.Columns.Add("nom");
            dtProdFourni.Columns.Add("prixVente");
     
            DataRow dr = dtProdFourni.NewRow();
     
            foreach (LibrairieClassTraiteur.ProduitFourni DataProduitFourni in Gestion.ListerProduitFourni(0, " ", "idprod"))
            {
                dr["idprod"] = DataProduitFourni.idprod;
                dr["nom"] = DataProduitFourni.nom;
                dr["prixVente"] = DataProduitFourni.prixVente;
     
                dtProdFourni.Rows.Add(dr);
                dr = dtProdFourni.NewRow();
     
            }
     
            return dtProdFourni;
        }
    Je lie la methode au GridView et créer un ItemTemplate pour insere Ma DDL

    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
    19
     
         <asp:GridView ID="GridViewProduitFourni" DataSource='<%# ListProdFourni() %>' AutoGenerateColumns="false"
                    runat="server" OnPageIndexChanging="GridViewProduitFourni_PageIndexChanging">
                    <Columns>
                        <asp:TemplateField HeaderText="Ajouter le produit">
                            <ItemTemplate>
                                <asp:CheckBox ID="CheckBoxAjoutProdFourn" runat="server" />
                            </ItemTemplate>
                        </asp:TemplateField>
                         <asp:TemplateField HeaderText="Quantité">
                            <ItemTemplate>
                                <asp:DropDownList ID="dropDownQteProdFourni" runat="server"></asp:DropDownList>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:BoundField DataField="idprod" HeaderText="Référence" ReadOnly="true" />
                        <asp:BoundField DataField="nom" HeaderText="Désignation" ReadOnly="true" />
                        <asp:BoundField DataField="prixVente" HeaderText="Prix Vente" ReadOnly="true" />
                    </Columns>
                </asp:GridView>
    J'ai essayer l'evenement RowCreated pour ajouter des valeurs dans le DDL mais rien y fait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
      public void GridViewProduitFourni_RowCreated(Object sender, GridViewRowEventArgs e)
       {
     
           foreach (GridViewRow row in GridViewProduitFourni.Rows)
           {
               DropDownList dp1 = (DropDownList)row.FindControl("dropDownQteProdFourni");
               for (int i = 0; i < 50; i++)
               {
                   dp1.Items.Add(i.ToString());
               }
           }
       }
    Merci pour votre aide
    Life myLife = new Life ("eat","sleep","code");

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2011
    Messages
    255
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Octobre 2011
    Messages : 255
    Points : 193
    Points
    193
    Par défaut
    Finalement j'ai trouver.

    Je créer une méthode qui ajoute a un arrayList l'ensemble de mon FOR.
    Et ajoute cette méthode a la propriété Datasource du DDL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     public ArrayList nbProd()
       {   
           //Ajouter les valeur du for dans la proriété datasource du DropDownList dans page aspx
     
           ArrayList j = new ArrayList();
           for (int i = 1; i <= 50; i++)
           {
               j.Add(i);   
           }
           return j;
     
       }
    Page Aspx :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      <asp:TemplateField HeaderText="Quantité">
                            <ItemTemplate>
                                <asp:DropDownList ID="dropDownQteProdFourni" DataSource='<%# nbProd() %>' runat="server"></asp:DropDownList>
                            </ItemTemplate>
                        </asp:TemplateField>
    Je suis entrain de chercher comment récupérer la valeur sélectionner dans le DDL ainsi que la valeur du checkBox.
    Life myLife = new Life ("eat","sleep","code");

Discussions similaires

  1. remplir une colonne d'une feuille Excel
    Par yousou dans le forum VB 6 et antérieur
    Réponses: 19
    Dernier message: 23/11/2007, 12h02
  2. remplir une colonne entière avec la même valeur
    Par potili2 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/11/2007, 12h24
  3. Réponses: 4
    Dernier message: 31/10/2007, 20h27
  4. Réponses: 4
    Dernier message: 09/08/2007, 16h04
  5. Remplir une colonne
    Par sali dans le forum Langage SQL
    Réponses: 3
    Dernier message: 13/12/2004, 10h00

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