private static EnumItemDescriptionList GetDescriptionListFromEnumType(Type enumType)
        {
            List <EnumItemDescription> eidList = new List <EnumItemDescription>();

            FieldInfo[] fileds = enumType.GetFields();

            for (int i = 0; i < fileds.Length; i++)
            {
                FieldInfo fi = fileds[i];

                if (fi.IsLiteral && fi.IsStatic)
                {
                    eidList.Add(EnumItemDescription.CreateFromFieldInfo(fi, enumType));
                }
            }

            eidList.Sort(delegate(EnumItemDescription x, EnumItemDescription y)
            {
                return(Math.Sign(x.SortId - y.SortId));
            }
                         );

            return(new EnumItemDescriptionList(eidList));
        }