enum dropdownlist c# .net

        static public List<SelectListItem> ToListItem<T>()
        {
            List<SelectListItem> li = new List<SelectListItem>();
            dynamic type = typeof(T);
            string a=type.ToString();
            foreach (int s in Enum.GetValues(typeof(T)))
            {
                li.Add(new SelectListItem
                {
                    Value = s.ToString(),
                    Text = GetEnumDescription(Enum.ToObject(typeof(T), s))
                });
            }
            return li;
        }



        public static string GetEnumDescription(object enumSubitem)
        {
            string strValue = enumSubitem.ToString();

            FieldInfo fieldinfo = enumSubitem.GetType().GetField(strValue);
            Object[] objs = fieldinfo.GetCustomAttributes(typeof(DescriptionAttribute), false);
            if (objs == null || objs.Length == 0)
            {
                return strValue;
            }
            else
            {
                DescriptionAttribute da = (DescriptionAttribute)objs[0];
                return da.Description;
            }
        }

                string dropDown = Request["dropDown"];
                string selectValue = string.IsNullOrEmpty(dropDown) ? "0" : dropDown;
                var dropDownListPre = new SelectList(EnumExt.ToListItem<RedRoomCardOperateType>(), "value", "text");
                List<SelectListItem> dropDownListItems = (List<SelectListItem>)dropDownListPre.Items;
                dropDownListItems.Add(new SelectListItem { Value = "0", Text = "请选择" });
                var m = (from tb in dropDownListItems where tb.Value == selectValue select tb).FirstOrDefault();
                m.Selected = true; m.Disabled = false;
                ViewBag.dropDownList = dropDownListItems;

 @Html.DropDownList("dropDown", @ViewBag.dropDownList as List<SelectListItem>)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值