Мне нужно привязать Html.DropDownList
двумя статическими элементами.
Text="Yes" Value="1"
Text="No" Value="0"
Важно то, что я должен установить поля текста и значения.
Как я могу это сделать?
Мне нужно привязать Html.DropDownList
двумя статическими элементами.
Text="Yes" Value="1"
Text="No" Value="0"
Важно то, что я должен установить поля текста и значения.
Как я могу это сделать?
Лучше всего не создавать SelectList в представлении. Вы должны создать его в контроллере и передать его с помощью ViewData.
Пример:
var list = new SelectList(new []
{
new { ID = "1", Name = "name1" },
new { ID = "2", Name = "name2" },
new { ID = "3", Name = "name3" },
},
"ID", "Name", 1);
ViewData["list"]=list;
return View();
вы переходите к constratctor: IEnumerable objec, поле значения - текстовое поле и выбранное значение.
в представлении:
<%=Html.DropDownList("list",ViewData["list"] as SelectList) %>
Я использовал это правильно.
@Html.DropDownList("Status", new List<SelectListItem>
{
new SelectListItem{ Text="Active", Value = "1" },
new SelectListItem{ Text="Not-Active", Value = "0" }
})
В приведенном ниже коде предполагается, что вы используете механизм просмотра бритвы, если вам не нужно его преобразовывать.
@{
var listItems = new List<ListItem>();
listItems.Add(new ListItem{Text="Yes", Value="1"});
listItems.Add(new ListItem{Text="No", Value="0"});
}
@Html.DropDownListFor(m=>m.SelectedValue, listItem);
Вы должны подумать о создании модели в своем коде вместо представления. Также это будет хорошим кандидатом для шаблона редактора.
если вы хотите, чтобы это было просто, просто попробуйте
@{
var domainsList = new SelectList(new []
{
new SelectListItem { Text = ".Com", Value = ".com", Selected = true },
new SelectListItem { Text = ".Shopping", Value = ".shopping"},
new SelectListItem { Text = ".Org", Value = ".org"},
new SelectListItem { Text = ".Net", Value = ".net"},
new SelectListItem { Text = ".AE", Value = ".ae"},
new SelectListItem { Text = ".Info", Value = ".info"},
}, "Value", "Text");
}
@Html.DropDownList("TopLevelDomains", domainsList)
Это решило это для меня:
<td>
@{ var RlistItems = new List<SelectListItem>();
RlistItems.Add(new SelectListItem { Text = "Select Room Type", Value = "0" });
RlistItems.Add(new SelectListItem { Text = "Meeting Room", Value = "1" });
RlistItems.Add(new SelectListItem { Text = "Office", Value = "2" });
RlistItems.Add(new SelectListItem { Text = "Cafeteria", Value = "3" });
}
@Html.DropDownListFor(model=>model.FirstOrDefault().RoomType
,RlistItems,RlistItems[item.RoomType.Value].Selected=true )
</td>
<select asp-for="CountryName" [email protected](new List<SelectListItem> { new SelectListItem {Text="India",Value="1" } ,new SelectListItem {Text="Japan",Value="2" }} ) class="form-control">
<option>SELECT COUNTRY -- </option>