C#將一個枚舉外面一切描繪和value綁定到下拉列表的辦法。本站提示廣大學習愛好者:(C#將一個枚舉外面一切描繪和value綁定到下拉列表的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是C#將一個枚舉外面一切描繪和value綁定到下拉列表的辦法正文
/// <summary>
/// 獲取枚舉值的描繪,假如沒有描繪,則前往枚舉稱號
/// </summary>
/// <param name="en">枚舉值</param>
/// <returns>描繪</returns>
public static string GetEnumDescription(Enum en)
{
FieldInfo fi = en.GetType().GetField(en.ToString());
object[] attrs = fi.GetCustomAttributes(typeof(DescriptionAttribute), false);
if (attrs != null && attrs.Length > 0)
{
return ((DescriptionAttribute)attrs[0]).Description;
}
else
{
return en.ToString();
}
}
ArrayList listcode = new ArrayList();//定義一個集合
foreach (int i in Enum.GetValues(typeof(ErrorCode))) //將值循環添加至集合中(ErrorCode:枚舉的稱號)
{
ListItem listitem = new ListItem(GetEnumDescription((ErrorCode)i), i.ToString());
// ListItem listitem = new ListItem(Enum.GetName(typeof(EnumActivityType), i), i.ToString());//獲取枚舉稱號集合
listcode.Add(listitem);
}
for (int i = 0; i < listcode.Count; i++) // 循環就可輸入每個枚舉的描繪和value(可用於為下拉列表框綁值)
{
ListItem item = (ListItem)listcode[i];
var d = item.Text;
var b = item.Value;
}