常规做成方法
namespace WindowsApplication1 { enum Weakday { 星期一, 星期二, 星期三, 星期四, 星期五, 星期六, 星期日 } public partial class Form1 : Form { public Form1() { InitializeComponent(); BinderEdays(); } /// <summary> /// 将枚举绑定到下拉框中 /// </summary> private void BinderEdays() { // Weakday的类型 Type type = typeof(Weakday); FieldInfo[] fields = type.GetFields(); for(int i=1;i<fields.Length;i++) { this.comboBox1.Items.Add(fields[i].Name); } } } }
如果打算做成一个共通的方法,能将任意枚举绑定到下拉框时,可用以下代码
public Form1() { InitializeComponent(); BinderEdays<Weakday>(); } //// <summary> /// 此处T要从struct继承,而不能是enum /// </summary> private void BinderEdays<T>() where T : struct { Type type = typeof(T); FieldInfo[] fields = type.GetFields(); for(int i=1;i<fields.Length;i++) { this.comboBox1.Items.Add(fields[i].Name); } }