Comment charger une DDL à partir d'une SortedList ?

Le
Gilbert Tordeur
Bonjour.

Contexte : VB2008, application web.

Je voudrais charger une DropDownList à partir d'une SortedList :

Dim LstEmploye as New SortedList(Of Integer, String)
' L'Integer est le numéro matricule, le String est le nom de l'employé
' Garnir LstEmploye

DdlEmploye.DataSource = LstEmploye
DdlEmploye.DataBind

1) Le problème est que la Ddl affiche le numéro et le nom, alors que je
voudrais n'afficher que le nom. Comment y remédier ?
2) En fait, je souhaite présenter les employés par ordre alphabétique et non
par ordre de matricule. Comment faire ?

Merci de votre aide,
Gilbert
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jérémy Jeanson
Le #17677411
Pourquoi utiliser une SortedList?

tu semple avoir des objets contenant matricule et nom d'employé, donc à
ta place j'utiliserais un list ou une table de tes objets comme
datasource. Ensuite on indique la propriété qui sert de text et celle
qui sert de valeur :

DdlEmploye.DataValueField = LstEmploye.Matricule
DdlEmploye.DataTextField = LstEmploye.Nom
DdlEmploye.DataSource = LstEmploye
DdlEmploye.DataBind()
--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net
Gilbert Tordeur
Le #17677811
Jérémy,

Je n'ai pas encore ces objets. Ma liste était créée à partir d'une lecture
en base de données.

Je comprends donc que tu me recommandes l'écriture d'une classe contenant
matricule et nom, puis le chargement d'objets de cette classe à partir de ma
lecture en base. Le reste est clair.

Je m'étais demandé si il existait un moyen pour que le DataValueField soit
automatiquement la clé de ma SortedList, et que le DataTextField soit
automatiquement la valeur de la SortedList. Tant pis.

Merci,
Gilbert

"Jérémy Jeanson"
Pourquoi utiliser une SortedList?

tu semple avoir des objets contenant matricule et nom d'employé, donc à ta
place j'utiliserais un list ou une table de tes objets comme datasource.
Ensuite on indique la propriété qui sert de text et celle qui sert de
valeur :

DdlEmploye.DataValueField = LstEmploye.Matricule
DdlEmploye.DataTextField = LstEmploye.Nom
DdlEmploye.DataSource = LstEmploye
DdlEmploye.DataBind()
--
Jérémy JEANSON
MCP
http://jeremy.blogdns.net


Publicité
Poster une réponse
Anonyme