DropDownList 绑定 枚举 Enum

public   static  List < ListItem >  GetEnumList(Type enumType,  bool  allAllOption)
    
{
        
if (enumType.IsEnum == false)
        
{
            
return null;
        }

        List
<ListItem> list = new List<ListItem>();
        
if (allAllOption == true)
        
{
            list.Add(
new ListItem("--全部--"""));
        }


        Type typeDescription 
= typeof(DescriptionAttribute);
        System.Reflection.FieldInfo[] fields 
= enumType.GetFields();
        
string strText = string.Empty;
        
string strValue = string.Empty;
        
foreach (FieldInfo field in fields)
        
{
            
if (field.IsSpecialName) continue;
            strValue 
= field.GetRawConstantValue().ToString();
            
object[] arr = field.GetCustomAttributes(typeDescription, true);
            
if (arr.Length > 0)
            
{
                strText 
= (arr[0as DescriptionAttribute).Description;
            }

            
else
            
{
                strText 
= field.Name;
            }


            list.Add(
new ListItem(strText, strValue));
        }


        
return list;
    }

 

     /**/ /// </summary>
    
/// 派驻申请的状态
    
/// </summary>

     public   enum  AccreditStatus
    
{
        
/**//// <summary>
        
/// 已经结束
        
/// </summary>

        [Description("结束")]
        Pass 
= 2,

        
/**//// <summary>
        
/// 新建
        
/// </summary>

       [Description("新建")]
        New 
= 0,

        
/**//// <summary>
        
/// 在审批中
        
/// </summary>

        [Description("审批中")]
        Running 
= 1,

        
/**//// <summary>
        
/// 被拒绝
        
/// </summary>

        [Description("被拒绝")]
        Refuse 
= -1
    }

            this.ddlState.DataSource = Global.GetEnumList(typeof(AccreditStatus), true);
            this.ddlState.DataTextField = "Text";
            this.ddlState.DataValueField = "Value";
            this.ddlState.DataBind();

转载于:https://www.cnblogs.com/tongdengquan/archive/2012/08/28/6090533.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值