在項目開發中好多地方用了枚舉,要把枚舉顯示到下拉列表框中我們平常的方法就是在下拉列表控件中一個一個添加進去!這樣做也行但如果我的枚舉類型中的枚舉值一旦改變,那麼你就得滿世界的去找然後再修改很麻煩。
這裡我有反射動態的綁定枚舉值就可以很方便的做修改了,代碼如下:
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;//這樣寫才正確