DropDownList ASP.NET C# [Résolu]

Signaler
Messages postés
66
Date d'inscription
mardi 18 juillet 2006
Statut
Membre
Dernière intervention
6 mars 2008
-
Messages postés
66
Date d'inscription
mardi 18 juillet 2006
Statut
Membre
Dernière intervention
6 mars 2008
-
Bonjour à tous,

Voilà, j'utilise une SqlDataSource pour remplir une DropDownList (bdd sqlserver).
Donc jusqu'ici pas de probleme. Dans ma requete SQL je remonte le nom, l'id et le type.
Le nom me sert pour affichage dans la liste et l'id pour la value...

Par contre j'aimerais que l'élement qui a un type égal à "toto" soit SELECTED (et non pas le premier par défaut comme c'est actuellement)

Je résume par un exemple :

Imaginons une table Client (avec id_client, nom_client et client_type)
J'aimerais donc remplir ma liste avec les nom_client mais que le client dont le client_type et égal à "toto" soit pré-selectionné...
NB : bien sur il n'y a qu'un seul client dans ma base qui est de type "toto"...

Voilà j'espere avoir été clair???

Merci beaucoup.

Cdt,

Garcimor.

2 réponses

Messages postés
66
Date d'inscription
mardi 18 juillet 2006
Statut
Membre
Dernière intervention
6 mars 2008

Merci pour ta réponse, elle m'a bien aidée.

Je mets la solution finale car il y avait des erreurs dans le code que tu m'as soumis :

        DataTable dt = GetDataSet(queryClient).Tables["Client"];

        foreach(DataRow r in dt.Rows)
        {
           ddlClient.Items.Add(new ListItem(r["CLT_NAME"].ToString(), r["ID_CLT"].ToString()));

           if( r["CLT_TYPE"].ToString() == "TOTO" )
              ddlClient.SelectedValue = r["CLT_NAME"].ToString();
        }

Merci encore pour le coup de main.

++
Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
20
Tu pourrais remplir ta ddl avec un SqlDataAdapter et une DataTable.

// declare adapter
// affecte SelectCommand à l'adapter

DataTable dt = new DataTable();
MyDataAdapter.Fill(dt);

for(int i=0; i<dt.Rows.count; i++)
{
   ddl.Items.Add(dt[i]["NOM_CLI"].ToString(), 
                         dt[i]["ID_CLI"].ToString());

   if( dt[i]["TYPE_CLI"].ToString() == "toto" )
      ddl.SelectedValue = dt[i]["ID_CLI"].ToString();
  
       // ou ddl.SelectedIndex = i;
}