在项目开发中好多地方用了枚举,要把枚举显示到下拉列表框中我们平常的方法就是在下拉列表控件中一个一个添加进去!这样做也行但如果我的枚举类型中的枚举值一旦改变,那么你就得满世界的去找然后再修改很麻烦。
这里我有反射动态的绑定枚举值就可以很方便的做修改了,代码如下:
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[i];
ListItem item=new ListItem(field.Name);
days.Items.Add(item);
}
}
OK这样就可以了,不过可惜的是枚举值显示转换不支持string类型的,如果支持的话那就很爽了。
Eume em = (Eume)days.SelectedValue; //这样写实错误的
Eume em = (Eume)days.SelectedIndex;//这样写才正确
一点小技巧和大家分享一下!
查看本文来源