Pracujem na tom MVC4 , using @Html.EditorForModel()
, ukazuje sa dropdownlist
ako textové pole, chcem sa zobraziť Dropdown
zoznam nastavením ľubovoľného attribute
a hlavná šablóna. Prosím, podeľte sa o mňa MVC4 príklad tohto.
@model Models.Employee
@{
ViewBag.Title = "Create";
}
<h2>Create</h2>
@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<fieldset>
<legend>Employee</legend>
@Html.EditorForModel()
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
<div>
@Html.ActionLink("Back to List", "Index")
</div>
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
Vopred ďakujem.
odpovede:
4 pre odpoveď č. 1Môžete definovať model zobrazenia, ktorý bude predstavovať rozbaľovaciu ponuku:
public class ItemsViewModel
{
public string SelectedValue { get; set; }
public IEnumerable<SelectListItem> Values { get; set; }
}
ktoré sa použijú vo vašom hlavnom modeli zobrazenia:
public class MyViewModel
{
public ItemsViewModel DropDown1 { get; set; }
public ItemsViewModel DropDown2 { get; set; }
...
}
Teraz už zostáva napísať šablónu vlastného editora pre ItemsViewModel
ktoré by mali byť umiestnené ~/Views/Shared/EditorTemplates/ItemsViewModel.cshtml
, Všimnite si, že názov a umiestnenie šablóny je dôležité:
@model ItemViewModel
@Html.DropDownListFor(x => x.SelectedValue, Model.Values)
a to je skoro všetko, čo potrebujete.
-1 pre odpoveď č. 2
Je to nevyhnutná šablóna? Môžete použiť @Html.DropDownList()
pomocník.
Existuje úplný príklad o tom, ako používať webovú stránku asp.net a môžete si stiahnuť projekt: Tu