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 :

dropdownlist dans un gridview


Sujet :

ASP.NET

  1. #1
    Membre éprouvé
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Par défaut dropdownlist dans un gridview
    bonsoir à tous

    j'ai un gridview avec une liste déroulante et un champ

    selon la valeur sélectionné dans cette liste j'affiche une valseur précise

    voici mon code
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
     <asp:GridView ID="GridView5" runat="server" AutoPostBack="false" BackColor="White"
                        BorderColor="#999999" BorderStyle="None" BorderWidth="1px" CellPadding="3" Font-Names="Calibri"
                        Font-Size="12pt" GridLines="Vertical" Height="26px" Style="left: 0px; position: absolute;
                        top: 0px" Width="786px">
                        <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
                        <Columns>
     
                            <asp:TemplateField HeaderText="Affectation">
                                <ItemTemplate>
                                    <asp:DropDownList ID="A1" runat="server" Width="100px" >
                                         <asp:ListItem>Non Affecté</asp:ListItem>
                                        <asp:ListItem>Affecté</asp:ListItem>
                                    </asp:DropDownList>
                                </ItemTemplate>
                            </asp:TemplateField>
     
                             <asp:TemplateField HeaderText="Classement">
                                <ItemTemplate>
                                    <asp:DropDownList ID="C1" runat="server" Width="100px" AutoPostBack="True" OnSelectedIndexChanged="C1_SelectedIndexChanged">
                                        <asp:ListItem> </asp:ListItem>
                                        <asp:ListItem>Classe1</asp:ListItem>
                                        <asp:ListItem>Classe2</asp:ListItem>
                                        <asp:ListItem>Classe3</asp:ListItem>
                                        <asp:ListItem>Classe4</asp:ListItem>
                                        <asp:ListItem>Classe5</asp:ListItem>
     
                                    </asp:DropDownList>
                                </ItemTemplate>
                            </asp:TemplateField>
     
                            <asp:TemplateField HeaderText="Budget">
     
                            </asp:TemplateField>
     
                        </Columns>
                        <RowStyle BackColor="#EEEEEE" ForeColor="Black" />
                        <SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
                        <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
                        <HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
                        <AlternatingRowStyle BackColor="Gainsboro" />
                    </asp:GridView>
    mais la procédure de C1_SelectedIndexChanged je ne sais pas comment la faire

    Merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 36
    Par défaut
    Bonjour,

    Dans un gridview, c'est "RowCommand" qui récupère les événements. (sauf en mode Edition). Quand on insère un bouton, on renseigne ses propriétés CommandName et CommandArgument. L’événement "RowCommand" permet de récupérer ses propriétées :

    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
     
     
     Private Sub gridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles gvFactures.RowCommand
     Select Case e.CommandName
                Case "SupprimerFacture"
                    itemFacture.codeFacture = e.CommandArgument
                    Call DataAccess.DataSources.SupprimerFacture(itemFacture)
                    Call initialisegvfacture(itemFacture.codeBon)
     
                Case "AnnulerFacture"
                    itemFacture.codeFacture = e.CommandArgument
                    itemFacture.annuler = True
                    Call DataAccess.DataSources.MajFacture(itemFacture)
                    Call initialisegvfacture(itemFacture.codeBon)
    end select
    Par contre la dropdownliste n'a pas de propriété CommandArgument et CommandName.
    tu peux placer un bouton a coté de ta liste et après la selection dans la liste l'utilisateur clique sur le bouton pour lancer l'évenement exemple liste "ddlNom" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Private Sub gridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles gvFactures.RowCommand
     
     Dim tbxAjout As TextBox
     Dim ddlgrid As DropDownList
     
     Select Case e.CommandName
      Case "VisualiserNom"
                    ddlgrid = CType(e.Item.FindControl("ddlNom"), DropDownList)
                    tbxAjout = CType(e.Item.FindControl("tbxTelAjout"), TextBox)
                    tbxAjout.Text =ddlgrid.SelectedItem.Value
    end select
    end sub
    C'est pas très propre mais sur du Vb.net 2002 ça fonction.
    Ce qui fonctionne peut être sur une version plus ressente :
    - parametre la propriété de la liste Autopostback à True
    - rajouter les propriétés CommandArgument et CommandName à la dropdownliste dans l'evenement "RowDataBound"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
            Private Sub gvFactures_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvFactures.RowDataBound
     
     
            Dim ddlgrid3 As DropDownList
           If row.RowType = DataControlRowType.DataRow Then
       ddlgrid3 = e.Item.FindControl("ddlNom")
        ddlgrid3.Attributes.Add("CommandName", "NewNom")
    end if
    end sub
    Voilà j’espère vous avoir donné quelques pistes.
    Bonne journée

  3. #3
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Normalement cela fonctionne pareil.
    Tu rajoutes le onselectedindexchanged dans la page .aspx et la fonction qui va bien en code-behind et deja cela devrait fonctionner

  4. #4
    Membre éprouvé
    Inscrit en
    Mars 2008
    Messages
    1 123
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1 123
    Par défaut
    Merci mais ça ne marche pas
    dans mon gridview j'ai une cellule (1) contient une liste et le contenu de la cellule (2) change en fonction du contenu de la cellule (1)

Discussions similaires

  1. Insérer une DropDownList dans une GridView
    Par Delphi-ne dans le forum ASP.NET
    Réponses: 4
    Dernier message: 14/05/2009, 09h15
  2. [ASP.NET][C#2] Ajout d'un dropdownlist dans un gridview
    Par Mouns007 dans le forum ASP.NET
    Réponses: 20
    Dernier message: 11/05/2009, 12h32
  3. Inclure une dropdownlist dans un gridview
    Par Delphi-ne dans le forum ASP
    Réponses: 1
    Dernier message: 31/08/2007, 10h41
  4. Réponses: 5
    Dernier message: 06/08/2007, 17h43
  5. Réponses: 2
    Dernier message: 27/05/2006, 18h26

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