Как установить только несколько значений перечисления в качестве значения типа ячейки данных? - PullRequest
1 голос
/ 05 января 2012

Мне нужно установить значение типа ячейки данных для значений перечисления для проверки.Как я могу установить только некоторые значения этого перечисления?

Я могу сделать

  dgv[i, j].ValueType = typeof(MyEnum);


  MyEnum { me, bro, sis, mom, dad }

Но это действует для всех значений перечисления в MyEnum, то есть позволяет пользователю печататьвсе значения в MyEnum, но больше ничего.Мне нужно, чтобы пользователь мог печатать только mom и dad.Как этого добиться?

1 Ответ

2 голосов
/ 06 января 2012

Вы можете определить другой Enum как подмножество MyEnum:

enum MyEnum { me, bro, sis, mom, dad } 

enum Subset 
{ 
    mom = MyEnum.mom,
    dad = MyEnum.dad
}

dgv[i, j].ValueType = typeof(Subset);     

// to get the MyEnum value, cast it back:
MyEnum cellVal = (MyEnum)dgv[i, j].Value;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...