Как определить, является ли объект перечислением?

Я не мастер C#, но для этого должно быть простое решение.

у меня есть IValueConverter для DataTemplate, Конвертер будет использоваться в элементе управления, данные которого связаны с объектом типа enum: public enum ContentTypes, Я хочу написать общий конвертер, который может принять любой enum а затем сделать что-то с этим, однако, когда преобразователь ниже делает свое дело тип параметра объекта ContentTypes скорее, чем Enum,

Convert метод:

public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
   Type valueType = value.GetType();    // <-- evaluates to `ContentTypes`. How can I just see if it's an enum, or Enum? 

   if (value.GetType() == typeof(Enum))
   {
       // Do something .... 
   }

   return null;
}

Итак, возможно ли взять объект неизвестного типа и определить, является ли он enum и привести его к такому перечислению, вообще? Мне не хватает чего-то простого.

1 ответ

Решение

Вы ищете Type.IsEnum свойство, которое делает именно это.

Другие вопросы по тегам