Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment charger une DDL à partir d'une SortedList ?

2 réponses
Avatar
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

2 réponses

Avatar
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
Avatar
Gilbert Tordeur
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" a écrit dans le message de news:

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