using System; using System.Collections.Generic; namespace ANXStatusComparer.Data { public class EnumData { #region Public /// <summary> /// The type of the enumeration. /// </summary> public Type Handle { get; private set; } public List<string> Names { get; private set; } public string[] Values { get; private set; } #endregion #region Constructor /// <summary> /// Create a new enumeration data holder. /// </summary> /// <param name="setType">Type of the enumeration.</param> public EnumData(Type setType) { Handle = setType; Array enumValues = Enum.GetValues(Handle); Type underlyingType = Enum.GetUnderlyingType(Handle); Values = new string[enumValues.Length]; Names = new List<string>(); for (int index = 0; index < Values.Length; index++) { object value = enumValues.GetValue(index); Names.Add(value.ToString()); Values[index] = Convert.ChangeType(value, underlyingType).ToString(); } } #endregion } }