欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

实例介绍asp.net项目开发中枚举的使用

程序员文章站 2022-04-26 18:10:46
...
这篇文章主要介绍介绍asp.net项目开发中枚举的使用。包含了显示枚举的值和为下拉框绑定枚举两个功能举例说明。

1 显示枚举的值:<%# (CN80s.DDPM.Model.Enum.EnumBidCardStatus)(int)Eval("PerpaidCard_Status")%>
2 为下拉框绑定枚举:

GetEnumList(ddlBids); 
void GetEnumList(DropDownList ddl) 
{ 
foreach (EnumBidCardType s in System.Enum.GetValues(typeof(EnumBidCardType))) 
{ 
ddl.Items.Add(new ListItem(s.ToString(), ((int)s).ToString())); 
} 
} 
this.ddlBids.DataSource = GetEnumList(typeof(EnumBidCardType), true); 
this.ddlBids.DataTextField = "Text"; 
this.ddlBids.DataValueField = "Value"; 
this.ddlBids.DataBind(); 
public static List<ListItem> GetEnumList(Type enumType, bool allAllOption) 
{ 
if (enumType.IsEnum == false) 
{ 
return null; 
} 
List<ListItem> list = new List<ListItem>(); 
if (allAllOption == true) 
{ 
list.Add(new ListItem("--全部--", "")); 
} 
Type typeDescription = typeof(DescriptionAttribute); 
System.Reflection.FieldInfo[] fields = enumType.GetFields(); 
string strText = string.Empty; 
string strValue = string.Empty; 
foreach (FieldInfo field in fields) 
{ 
if (field.IsSpecialName) continue; 
strValue = field.GetRawConstantValue().ToString(); 
object[] arr = field.GetCustomAttributes(typeDescription, true); 
if (arr.Length > 0) 
{ 
strText = (arr[0] as DescriptionAttribute).Description; 
} 
else 
{ 
strText = field.Name; 
} 
list.Add(new ListItem(strText, strValue)); 
} 
return list; 
}

以上就是实例介绍asp.net项目开发中枚举的使用的详细内容,更多请关注其它相关文章!

相关标签: asp.net,枚举