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 / DataBinding / BDD


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 288
    Par défaut DropDownList / DataBinding / BDD
    Bonjour tout le monde !

    Je viens vers vous car depuis hier je me prends la tête avec mes DropDownList

    J'explique la cituation : j'ai un gridview. La première colonne de ce gridview comporte une DropDownList


    Au chargement de la grid, j'insère des données dans la DropDownList :
    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
     
    DropDownList attribute = e.Item.FindControl("Attribute") as DropDownList;
                    attribute.DataSource = CreateComboBoxDataSource();
                    attribute.DataTextField = "AttributeTextField";
                    attribute.DataValueField = "AttributeValueField";
                    attribute.DataBind();
     
    ICollection CreateComboBoxDataSource()
            {
     
                // Create a table to store data for the DropDownList control.
                DataTable dt = new DataTable();
     
                // Define the columns of the table.
                dt.Columns.Add(new DataColumn("AttributeTextField", typeof(String)));
                dt.Columns.Add(new DataColumn("AttributeValueField", typeof(String)));
     
                // Populate the table with values.
                DataTable data = UA.retrieveAttributes(cu, 2);
     
                foreach (DataRow row in data.Rows)
                {
                    dt.Rows.Add(CreateRow(row["nom"].ToString(), row["nom"].ToString(), dt));
                }
     
                DataView dv = new DataView(dt);
                return dv;
     
            }
     
            DataRow CreateRow(String Text, String Value, DataTable dt)
            {
     
                DataRow dr = dt.NewRow();
     
                dr[0] = Text;
                dr[1] = Value;
     
                return dr;
     
            }
    La DropDownList comporte par exemple : numDossier | nom | prenom

    Lorsque je clique sur "Sauvegarder", ça m'enregistre dans une table en bdd (sql server), et au chargement s'il y a des lignes dans cette table, je les rappatrie dans ma gridview.

    Structure table bdd : ID | Attribute | Text | Debut | Fin

    Le problème est que je n'arrive pas à faire correspondre le texte en bdd avec l'élément de la DropDownList correspondant...

    Exemple :
    ligne en bdd => 1 | nom | toto | titi | tata
    lorsque la ligne est insérée dans ma DropDownList, la valeur devrait être "nom", mais je n'arrive pas à faire le rapprochement entre la chaine "nom" récupérée en bdd et l'item correspondant...

    Pouvez-vous m'éclairer svp.

    Merci

  2. #2
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Bonjour Juan,

    As-tu essayé de cette façon ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:DropDownList ID="DropDownList1" runat="server" SelectedValue='<%# Bind("NOM_DU_CHAMP")%>'></asp:DropDownList>
    En espérant t'avoir aidé.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 288
    Par défaut
    Bonjour Nicolas et merci pour ta réponse !

    Et bien en fait je n'ai pas la propriété "SelectedValue" lorsque je définie mon composant asp

    Par contre je peux y accéder dans le code behind...

  4. #4
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Et bien en fait je n'ai pas la propriété "SelectedValue" lorsque je définie mon composant asp
    ??? Tu veux dire que la propriété n'existe pas ou bien qu'elle n'apparaît pas dans l'intellisense si tu édites le markup de ta page ?
    Dans tous les cas, si tu utilises le contrôle DropDownList ASP.Net par défaut tu es obligé d'avoir cette propriété

    As-tu essayé de rajouté SelectedValue=... même si la propriété n'apparaît pas automatiquement ?

    Concernant l'intellisense, il est possible que ce soit un problème de paramétrage dans le web.config. As-tu bien quelque chose de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     <system.web>
          <controls>
            <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=x.x.xxxxx.x, Culture=neutral, PublicKeyToken=xxxxxxxxx"/>
          </controls>
    </system.web>
    En espérant t'avoir aidé.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 288
    Par défaut
    Oué intellisense fait nimp.

    Bon par contre Selected ne réglait pas mes problème.

    En fait comme j'utilise telerik il a fallu que je fasse autrement.

    merci pour l'aide en tout cas

Discussions similaires

  1. DropDownList avec acces BDD
    Par poti67 dans le forum JSF
    Réponses: 1
    Dernier message: 01/10/2008, 21h41
  2. ListView DropDownList et problème de databinding
    Par neo.51 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 15/04/2008, 17h17
  3. Problème de DataBind() sur des DropDownList
    Par getz85 dans le forum ASP.NET
    Réponses: 10
    Dernier message: 28/02/2008, 15h31
  4. dropdownlist + databinding
    Par freddyboy dans le forum ASP.NET
    Réponses: 11
    Dernier message: 15/11/2007, 14h49
  5. DropDownList liée à une BDD + "tous"
    Par kheironn dans le forum ASP.NET
    Réponses: 4
    Dernier message: 22/06/2007, 12h54

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