我有enum
个3个值。我想将枚举值绑定到除@Html.CheckBox
之外的enum
。如何实现这一目标?
我的public enum EType
{
[EnumMember]
UNKNOWN = 0,
[EnumMember]
Value1 = 1,
[EnumMember]
Value2 = 2
}
-
ViewBag
这是控制器中的ViewBag.Enums = from Enum e in Enum.GetValues(typeof(EType))
select new SelectListItem { Value = Convert.ToInt32(e).ToString(), Text =((EType)e).ToString() };
,其中包含枚举值 -
<td>
@{
IEnumerable<SelectListItem> Enums = ViewBag.Enums;
foreach (var item in Enums)
{
@Html.CheckBox(item.Text, false, new { item.Value })
<label>@item.Text</label><br />
}
}
这是我的Html -
{{1}}
答案 0 :(得分:3)
在View中,试试这个
var enumList = Enum.GetValues(typeof(EType)).Cast<EType>().Skip(1);
@foreach (var optVal in enumList)
{
<label>
@Html.CheckBox(optVal.ToString(), false, new { value = Convert.ToInt32(optVal).ToString()})
@optVal
</label>
}