1

我有enum3 个值。我想将枚举值绑定到@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() };

这是我的 HTML-

<td>
@{
IEnumerable<SelectListItem> Enums = ViewBag.Enums;
foreach (var item in Enums)
 {                                                                   
  @Html.CheckBox(item.Text, false, new { item.Value }) 
  <label>@item.Text</label><br />
 }
}

4

1 回答 1

3

在视图中,试试这个

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>
}
于 2013-09-26T08:59:37.563 回答