• 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();

  • 相关阅读:
    Ubuntu上使用Latex
    Ubuntu18.04 解压文件名乱码的解决方法
    Android 编译 opencv
    android 使用编译好的sdk
    https协议加密原理介绍(一)
    java 面试题目 class.forName和load的区别
    给进程设置环境变量
    Maven 编译jdk配置
    Docker积累
    潜谈单例模式
  • 原文地址:https://www.cnblogs.com/DotNet1010/p/1154065.html
Copyright © 2020-2023  润新知