54 lines
1.0 KiB
C#
Raw Normal View History

2011-10-31 05:36:24 +00:00
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
}
}