zoukankan      html  css  js  c++  java
  • 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();

  • 相关阅读:
    deepin 安装微信与QQ
    安装git
    在ubuntu上安装最新稳定版本的node及npm
    如何恢复Initial commit之前的源文件
    git使用之错误分析及解决(持续更新)
    【翻译】在Ext JS 5应用程序中如何使用路由
    【翻译】Sencha Ext JS 5发布
    【翻译】Ext JS 4——Ajax和Rest代理处理服务器端一场和消息的方法
    【翻译】Ext JS——高效的编码风格指南
    【翻译】在Ext JS 5种使用ViewControllers
  • 原文地址:https://www.cnblogs.com/DotNet1010/p/1154065.html
Copyright © 2011-2022 走看看