您的位置:首页 > 运维架构

如何将枚举类型作为数据源绑定在一个DROPDOWNLIST上,并指定用户可见枚举的真实值是名称

2006-07-14 16:00 609 查看
private void Page_Load(object sender, System.EventArgs e)
{
ListType();
}
private void ListType()
{
drpStatus.Items.Clear();
drpStatus.DataSource=ListType();
drpStatus.DataValueField="value";
drpStatus.DataTextField="text";
drpStatus.DataBind();
}
public static IList ListType()
{
ArrayList list=new ArrayList();
foreach(int i in Enum.GetValues(typeof(EnumActivityType)))
{
ListItem listitem = new ListItem(Enum.GetName(typeof(EnumActivityType),i),i.ToString());
list.Add(listitem);
}
return list;
}
public enum EnumActivityType
{
Task = 344,
Fax = 345,
Phone = 346,
Email = 347,
Reminder = 348,//Letter
Appointment = 349,
Expiration = 350,
Inquiry = 367
}
---------------------------------------------------------------

把枚举值放进ArrayList ,楼上正解
---------------------------------------------------------------

//*************前台
<form id="Form1" method="post" runat="server">
<asp:DropDownList id="drpStatus" style="Z-INDEX: 101; LEFT: 248px; POSITION: absolute; TOP: 72px" runat="server"></asp:DropDownList>
</form>
//**************后台
protected System.Web.UI.WebControls.DropDownList drpStatus;
private void Page_Load(object sender, System.EventArgs e)
{
ListType();
}
private void ListType()
{
drpStatus.Items.Clear();
drpStatus.DataSource=ListTypeForEnum();
drpStatus.DataValueField="value";
drpStatus.DataTextField="text";
drpStatus.DataBind();
}
public static IList ListTypeForEnum()
{
ArrayList list=new ArrayList();
foreach(int i in Enum.GetValues(typeof(EnumActivityType)))
{
ListItem listitem = new ListItem(Enum.GetName(typeof(EnumActivityType),i),i.ToString());
list.Add(listitem);
}
return list;
}
public enum EnumActivityType
{
Task = 344,
Fax = 345,
Phone = 346,
Email = 347,
Reminder = 348,
Appointment = 349,
Expiration = 350,
Inquiry = 367
}
---------------------------------------------------------------

foreach(string ddlText in Enum.GetNames(typeof(EnumData.UserType)))
{
ListItem lit = new ListItem();
lit.Value = ddlValue.ToString();
lit.Text = ddlText;
ddlValue++;
ddlType.Items.Add(lit);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐