Auswahlliste ausgewählte Wert nicht übernommen (DropDownList

Ich habe eine Razor-Seite mit einem drop-down-Liste in einem Formular:

@using (Html.BeginForm("ProductsByOwners", "Report", FormMethod.Post, new { @id = "ProductsByOwners" }))
{            
    @Html.Label("Choose product owner: ")
    @Html.DropDownList("OwnerList", (SelectList)ViewBag.OwnerList, new { @onchange = "this.form.submit();" })    
}

Den ausgewählten Wert meiner SelectList ist nicht auf die DropDownList. Ich habe gedebuggt und trat durch den code, und festgestellt, dass (SelectList)ViewBag.OwnerList wertet richtig und hat den erwarteten Wert gewählt, aber der resultierende HTML-Code nicht eines der option tags ausgewählt.

Kann jeder sehen, was mache ich hier falsch?

AKTUALISIERT

Hier ist, wie der Auswahlliste erstellt, in der meine Aktion:

ViewBag.OwnerList = new SelectList(ListUtils.ProductOwners(), "Key", "Value", values["OwnerList"]);

Das Ergebnis hat den Wert, angezeigt durch values["OwnerList"] ausgewählt.

Dank!

  • Können Sie zeigen konnte, wo Sie die Auswahlliste?
  • Ich fügte hinzu, ein update. Obwohl, ich bin mir ziemlich sicher, dass das problem in der View. Ich trat schon durch den code in der Ansicht und die Auswahlliste hat einen ausgewählten Wert.
  • Sind Sie sicher, dass der angegebene Wert (Werte["OwnerList"]) existiert in der ProductOwners-Liste? Sind die Werte korrekt gerendert in der select-Liste?
  • Yep. Wenn ich eine Uhr zu ViewBag.OwnerList, die SelectedValue Eigenschaft ist die gleiche wie values["OwnerList"] und wenn ich einen Drilldown zu, dass SelectListItem, die Selected Eigenschaft ist true.
  • Welche Art von Typ ist, 'der Schlüssel'? Haben Sie versucht, casting-Werte["OwnerList"], um die spezifische Art?
  • Geändert (string)values["OwnerList"]. Dasselbe Ergebnis; der SelectList hat den richtigen Wert ausgewählt.

InformationsquelleAutor Paul | 2012-02-13
Schreibe einen Kommentar