2009-06-02 8 views
49

Je construis une interface d'entrée de données et j'ai lié avec succès les colonnes qui ont des tables de référence pour leurs données en utilisant DropDownList afin que l'utilisateur sélectionne parmi les valeurs préconfigurées. Mon problème maintenant est 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é affectée. Y a-t-il une façon plus élégante de faire cela que d'ajouter du code pour inclure une valeur vide en haut de la liste après l'avoir récupérée de la base de données et avant de la passer au constructeur SelectList de ma classe contrôleur?Ajouter une valeur vide à un DropDownList dans ASP.net MVC

Répondre

98

La fonction d'assistance Html prend comme troisième paramètre un paramètre 'première valeur vide'.

<%=Html.DropDownList("name",dataSource,"-please select item-")%> 
+0

excellent! Merci – jvanderh

+0

Ah c'est génial, je regardais les paramètres de l'objet 'SelectList' pour cela – Matt

-9

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)); 
+0

Je suppose que la question est en ce qui concerne asp.net MVC! – tofi9

+0

Oui, non applicable à asp.net MVC – BenB

Questions connexes