Ajouter une valeur vide à une liste déroulante dans ASP.net MVC

Je construis une interface de saisie de données et j'ai réussi à lier les colonnes qui ont des tables de référence pour leurs données à L'aide de DropDownList afin que l'utilisateur sélectionne des valeurs préconfigurées.

Mon problème est maintenant que je ne veux pas que la première valeur soit sélectionnée par défaut, je dois forcer l'utilisateur à sélectionner une valeur dans la liste pour éviter les erreurs où ils n'ont pas choisi ce champ et par défaut une valeur a été assignée.

Y a-t-il une façon plus élégante de le faire que d'ajouter code pour inclure une valeur vide en haut de la liste après l'avoir obtenue de la base de données et avant de la Passer au constructeur SelectList dans ma classe de contrôleur?

49
demandé sur jvanderh 2009-06-03 02:33:53

2 réponses

La fonction HTML helper prend un paramètre' first empty value ' comme troisième argument.

<%=Html.DropDownList("name",dataSource,"-please select item-")%>
98
répondu Ropstah 2009-06-02 22:45:19

Vous pouvez également utiliser cette façon:

dropdownlist.DataTextField = ds.Tables[0].Columns[0].Caption;
dropdownlist.DataValueField = ds.Tables[0].Columns[1].Caption;
dropdownlist.DataSource = ds;
dropdownlist.DataBind();


dropdownlist.Items.Insert(0, new ListItem("Select ...", string.Empty)); 
-9
répondu qulzam 2014-02-17 21:59:39