Ниже мой Enumerator List
:
public enum StatusEnum
{
Open = 1,
Rejected = 2,
Accepted = 3,
Started = 4,
Completed = 5,
Cancelled = 6,
Assigned = 7
}
Мне нужно привязать это к Combobox
, но показывать только несколько определенных статусов и игнорировать остальные.
Это то, что у меня есть до сих пор:
public static List<Activity.StatusEnum> StatusList()
{
IEnumerable<Activity.StatusEnum> query = Enum.GetValues(typeof(Activity.StatusEnum)).Cast<Activity.StatusEnum>()
.Where(x => x == Activity.StatusEnum.Open
|| x == Activity.StatusEnum.Rejected
|| x == Activity.StatusEnum.Accepted
|| x == Activity.StatusEnum.Started);
return query.ToList();
}
Однако я чувствую, что код немного беспорядочен и не является правильным подходом к привязке отфильтрованного списка Enum
к Combobox
.
Может ли кто-нибудь предложить более надежный способ сделать это?
Update
Мне может потребоваться изменить порядок выбора. Поэтому мне нужно общее решение, которое не только получает первое X количество статусов.