灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2925回复:0

ASP.NET中绑定枚举类型

楼主#
更多 发布于:2011-09-01 02:49
在项目开发中好多地方用了枚举,要把枚举显示到下拉列表框中我们平常的方法就是在下拉列表控件中一个一个添加进去!这样做也行但如果我的枚举类型中的枚举值一旦改变,那么你就得满世界的去找然后再修改很麻烦。

  这里我有反射动态的绑定枚举值就可以很方便的做修改了,代码如下:

public enum Eume
{
 星期一,
 星期二,
 星期三,
 星期四,
 星期五
}

  绑定方法:

private void BinderDays()
{
 Type type = typeof(Eume);
 FieldInfo[] fields= type.GetFields();
 int count = fields.Length;
 for (int i = 1; i < count; i++)
 {
  FieldInfo field = fields;
  ListItem item=new ListItem(field.Name);
  days.Items.Add(item);
 }
}

  OK这样就可以了,不过可惜的是枚举值显示转换不支持string类型的,如果支持的话那就很爽了。

Eume em = (Eume)days.SelectedValue; //这样写实错误的
Eume em = (Eume)days.SelectedIndex;//这样写才正确

  一点小技巧和大家分享一下!

喜欢0 评分0
游客

返回顶部