Je suis nouveau sur ASP.net MVC et j'ai du mal à faire fonctionner correctement les listes déroulantes.Html.DropDownListPour ne pas se comporter comme prévu ASP.net MVC
j'avoir une vue fortement typé qui tente d'utiliser un Html.DropDownListFor comme suit:
<%=Html.DropDownListFor(Function(model) model.Arrdep, Model.ArrdepOptions)%>
Je peuplant la liste avec une propriété dans mon modèle comme suit:
Public ReadOnly Property ArrdepOptions() As List(Of SelectListItem)
Get
Dim list As New List(Of SelectListItem)
Dim arriveListItem As New SelectListItem()
Dim departListItem As New SelectListItem()
arriveListItem.Text = "Arrive At"
arriveListItem.Value = ArriveDepart.Arrive
departListItem.Text = "Depart At"
departListItem.Value = ArriveDepart.Depart
Select Case Me.Arrdep
Case ArriveDepart.Arrive : arriveListItem.Selected = True
Case Else : departListItem.Selected = True
End Select
list.Add(departListItem)
list.Add(arriveListItem)
Return list
End Get
End Property
Le Select Case fonctionne find et il définit le SelectListItem comme sélectionné, mais lorsque ma vue affiche la liste déroulante, peu importe ce qui est marqué comme sélectionné, le HTML généré n'a rien sélectionné. Je suis évidemment en train de faire quelque chose de mal ou de manquer quelque chose, mais je ne peux pas pour la vie de comprendre ce que je veux dire.
Cela n'a pas fonctionné. La liste déroulante a été remplie avec deux options contenant System.Web.Mvc.SelectListItem (par exemple, ) Aucune valeur ne lui était associée. J'apprécie l'aide au passage. – rybl
Modifiez cette ligne: Retour Nouvelle SelectList (liste, Me.Arrdep) à ceci: Retour Nouvelle SelectList (liste, « texte », « Valeur », Me.Arrdep) –
Ce résolu le problème avec lui montrant , mais il ne sélectionne toujours pas le champ approprié par défaut. Merci encore pour votre aide. – rybl