System.Enum.GetValues C# (CSharp) Method

GetValues() private method

private GetValues ( Type enumType ) : Array
enumType Type
return Array
        public static Array GetValues(Type enumType)
        {
            if (enumType == null)
                throw new ArgumentNullException("enumType");

            if (!(enumType is RuntimeType))
                throw new ArgumentException(Environment.GetResourceString("Arg_MustBeType"), "enumType");

            if (!enumType.IsEnum)
                throw new ArgumentException(Environment.GetResourceString("Arg_MustBeEnum"), "enumType");

            // Get all of the values
            ulong[] values = GetHashEntry(enumType).values;

            // Create a generic Array
            Array ret = Array.CreateInstance(enumType, values.Length);

            for (int i = 0; i < values.Length; i++)
            {
                Object val = ToObject(enumType, values[i]);

                ret.SetValue(val, i);
            }

            return ret;
        }
        

Usage Example

Esempio n. 1
0
    public static T RandomEnumValue <T>() where T : struct, System.IConvertible
    {
        System.Array values = Enum.GetValues(typeof(T));
        Random       random = new Random();

        return((T)values.GetValue(random.Next(values.Length)));
    }
All Usage Examples Of System.Enum::GetValues