Wie Sie Html.ListBoxFor mit MVC4
Ich versuche zum füllen eines ListBox. Mein Modell ist nur eine Liste. Ich kann nicht finden, eine einfache Erklärung der Parameter, die ich brauchen würde, um die Verwendung mit @Html.ListBoxFor().
Ist hier ein Teil von meinem code:
public ActionResult Index()
{
List<string> names = GetAllNames();
return View(names);
}
...
In der Ansicht:
@model List<string>
...
@Html.ListBoxFor(?)
Dank.
Hat die Dokumentation helfen? Und wenn nicht, was genau verstehst du nicht?
Dies sind die Parameter, die ich in der Dokumentation: Ausdruck Typ: System.Linq -.Ausdrücke.Ausdruck<U<TModel, TProperty>> Ein Ausdruck, der angibt, die das Objekt enthält die Eigenschaften für die Anzeige. selectList Typ: System.Sammlungen.Generisches.IEnumerable<SelectListItem> Eine Sammlung von SelectListItem Objekte, die verwendet werden zum füllen der Dropdown-Liste. Ich bin nicht sicher, was der erste parameter bedeutet in meiner situation.
Dies sind die Parameter, die ich in der Dokumentation: Ausdruck Typ: System.Linq -.Ausdrücke.Ausdruck<U<TModel, TProperty>> Ein Ausdruck, der angibt, die das Objekt enthält die Eigenschaften für die Anzeige. selectList Typ: System.Sammlungen.Generisches.IEnumerable<SelectListItem> Eine Sammlung von SelectListItem Objekte, die verwendet werden zum füllen der Dropdown-Liste. Ich bin nicht sicher, was der erste parameter bedeutet in meiner situation.
InformationsquelleAutor David Shochet | 2014-05-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
können Sie füllen Sie die Modell-Liste in der Sie die controller-action als:
und in Ihr .cshtml, Sie können es verwenden als:
für den Umgang mit Listen in Sicht, Sie brauchen, um wirken zu SelectList geben. und in unserem Beispiel Land wird davon ausgegangen, dass ein Modell für diesen Zweck. (die Schlüssel und Werte für die Auswahlliste)
Nicht unbedingt. Sie können auch einfach zeigen Länder wie: var Länder = new [] {"Pakistan", "Nepal", "Türkei"}; ViewBag.CountryList= new SelectList(Länder); und dann verwenden Sie es in Ihrem Blick. ABER denken Sie daran! im Fall, Sie wollen Holen Sie sich ausgewählte Land, die Sie wirklich brauchen entsprechenden ID angeschlossen ist. für diesen Zweck, so dass das Land Modell ist ein effizienter Ansatz 😉
Brauche ich CountryModel, die eine Liste von Ländern, oder reicht es, pass, List<Land>, um die Ansicht zu sein verwendet als Modell? Und was ist SelectedCountry in deinem code? Danke.
Wenn Sie später den Wert zu verwenden, was der Benutzer ausgewählt hat, für das Land, dann werde ich empfehlen, ein Modell, mit entsprechenden Ids. Andernfalls, wenn Sie einfach nur um die Liste anzuzeigen, dann Liste ist genug (wie schon in früheren Kommentar), 2. m ist.SelectedCountry ist die Eigenschaft des Modells, für die, Benutzer kann auswählen Land. (zB. SelectedCountry = Pakistan *ausgewählt aus der Auswahlliste oder dropdown etc.).
InformationsquelleAutor Zeeshan
Müssen Sie zuerst erstellen Sie eine viewModel; hier nehmen wir an, es ist benannt ListBoxViewModel.
Zweiten, fügen Sie folgenden code zu Ihrer Ansicht.
InformationsquelleAutor Paul Cong