Ausgewählte drowdown Wert nichtgewählter Wert für @ Html.DropDownListFor nicht
@Html.DropDownListFor(x => x.AgeGroup, ViewBag.AgeGroup as SelectList, "Please select", new {@class = "form-control", id = "ddl_InvAgeGroup", name = "AgeGroup"})
Ausgewählte drowdown Wert nichtgewählter Wert für @ Html.DropDownListFor nicht
@Html.DropDownListFor(x => x.AgeGroup, ViewBag.AgeGroup as SelectList, "Please select", new {@class = "form-control", id = "ddl_InvAgeGroup", name = "AgeGroup"})
den gewünschten Effekt zu erzielen angezeigt bekommen Sie 2 Objekte auf Ihrer Ansicht nach Modell haben könnten: eine, die den ausgewählten Wert halten wird und eine dass die Liste der möglichen Werte halten:
public ActionResult Index()
{
var model = new MyViewModel();
// Obviously the list of possible values might be
// coming from a database or something else
model.AgeGroups = new[]
{
new SelectListItem { Value = "1", Text = "group 1" },
new SelectListItem { Value = "2", Text = "group 2" },
new SelectListItem { Value = "3", Text = "group 3" },
};
// an element with Value="2" from the previous collection will be selected
model.AgeGroup = "2";
return View(model);
}
012:
public class MyViewModel
{
public string AgeGroup { get; set; }
public IEnumerable<SelectListItem> AgeGroups { get; set; }
}
, die Sie in Ihrem Controller-Aktion bevölkern würden
und schließlich in der Ansicht:
@Html.DropDownListFor(
x => x.AgeGroup,
Model.AgeGroups,
"Please select",
new { @class = "form-control", id = "ddl_InvAgeGroup", name = "AgeGroup" }
)
aber ich brauche dynamische Daten – ArunRaju
Sicher, projizieren Sie einfach Ihre dynamischen Daten in die 'AgeGroups' Collection Eigenschaft Ihres View-Modells, genauso wie Sie Ihre' ViewBag.AgeGroup' bevölkert haben. –
Das Format wird '@ Html.DropDownList (m => m.yourProperty, Model.YourSelectList, "Bitte wählen", neue {...}' - Sie brauchen eine zu bindende Eigenschaft und eine Eigenschaft für die 'SelectList'. Wenn der Wert der Eigenschaft dem Wert einer der Optionen entspricht, wird sie ausgewählt. –
Ich habe meinen Code geändert, aber nicht den ausgewählten Wert und stattdessen den Wert in drop unten zeigt es 2 mal Dropdown-Werte – ArunRaju
Sie scheinen die gleiche Eigenschaft für die Sammlung und den ausgewählten Wert zu verwenden: 'AgeGroup'. So sollte dieser Helfer nicht verwendet werden. Sie benötigen 2 Eigenschaften für Ihr Ansichtsmodell: einen Skalartyp, der den ausgewählten Wert enthält, und eine IEnumerable-Eigenschaft, die die Liste der möglichen Werte enthält, die im Dropdown-Menü angezeigt werden sollen. –