using System;
using System.Collections;
using System.Collections.Generic;
namespace WalkingTec.Mvvm.Core.Extensions
{
///
/// 枚举扩展函数
///
public static class EnumExtension
{
#region 将枚举类型转化为下拉列表
///
/// 将枚举类型转化为下拉列表
///
/// 枚举类型
/// value
/// pleaseSelect
/// 下拉菜单数据列表
public static List ToListItems(this Type self, object value = null, bool pleaseSelect = false)
{
string[] names = null;
Array values = null;
//如果是枚举
if (self.IsEnum)
{
names = Enum.GetNames(self);
values = Enum.GetValues(self);
}
//如果是nullable的枚举
if (self.IsGenericType && self.GenericTypeArguments[0].IsEnum)
{
names = Enum.GetNames(self.GenericTypeArguments[0]);
values = Enum.GetValues(self.GenericTypeArguments[0]);
}
//生成下拉菜单数据
List rv = new List();
if (names != null)
{
for(int i=0;i