2017-01-17 1 views
0

gefüllt ist Ich habe eine @Html.DropDownList, die ich mit einem ViewBag in meinem Controller bevölkern. Ich schaue, ob es möglich ist, dass das Dropdown-Menü die Werte vom Controller laden kann, aber in der Lage ist, bei Bedarf ein neues hinzuzufügen und es dann beim Speichern des vollständigen Datensatzes zu speichern.Dynamisch zu @ Html.DropDownList hinzufügen, die bereits mit ViewBag

Meine Ansicht enthält

<div class="form-group"> 
     @Html.LabelFor(model => model.MaterialTypesID, "Material Type", new { @class = "control-label col-md-2" }) 
     <div class="col-md-10"> 
      @Html.DropDownList("MaterialTypesID", String.Empty) 
      @Html.ValidationMessageFor(model => model.MaterialTypesID) 
     </div> 
    </div> 

mein Controller -

private void PopulateMaterialTypeList(object selectMaterialType = null) 
    { 
     string voidInd = "Y"; 
     var materialType = db.MaterialTypes 
      .Where(x => x.VoidInd == voidInd) 
      .OrderBy(x => x.MaterialType1); 

     ViewBag.MaterialTypesID = new SelectList(materialType, "MaterialTypesID", "MaterialType1", selectMaterialType); 
    } 
+0

Meinst du dynamisch hinzufügen einen neuen Optionswert zu ' ' –

Antwort

0

Ich würde denken, dass MaterialTypesID.Items.Insert(0, new ListItem("Text","Value")); mit funktionieren würde. Ich habe es nicht getestet, aber ich weiß nicht, was Sie davon abhalten würde, nachdem Sie Daten eingegeben haben.

+0

Würde das in der Steuerung oder der Ansicht sein? –

+0

Das Ziel dessen, was du versuchst zu versuchen, ist 1) ein Dropdown-Menü mit einem Viewbag aufzufüllen und dann 2) dem bereits vorhandenen Dropdown-Menü Werte hinzuzufügen? Habe ich Recht, das zu sagen? Sie haben Ihren Controller über das anfängliche Auffüllen, Sie könnten dann eine andere Controller-Aktion aufrufen, die mit der von mir geschriebenen Zeile mehr hinzufügen würde. –

+0

Sie haben meine Absicht richtig angegeben. Momentan erlaubt das Dropdown-Menü keinen Eintrag, es wird nur gelesen. –

Verwandte Themen