使用枚举数据填充组合框

use*_*862 0 .net c#

我有枚举

public enum MyEnum
{ 
   Choice = 1,
   Choicee = 2,
   Choiceee = 3
}
Run Code Online (Sandbox Code Playgroud)

我想用这个枚举值动态填充列表

var data = new List<ComboBoxItem>();
Run Code Online (Sandbox Code Playgroud)

哪里ComboBoxItem有两个属性,IdName.Id应该是枚举值,名称应该是枚举值,如Choice或Choicee,...

Kam*_*ski 5

你可以使用Enum.GetValues它:

var values = Enum.GetValues(typeof(SearchOption)).Cast<SearchOption>()
            .Select(x => new ComboBoxItem() { Id = (int)x, Name = x.ToString() }).ToList();
Run Code Online (Sandbox Code Playgroud)