Ну, проблема в том, что у меня есть это перечисление, НО я не хочу, чтобы в поле со списком отображались значения перечисления. Это перечисление:
public enum Mode
{
[Description("Display active only")]
Active,
[Description("Display selected only")]
Selected,
[Description("Display active and selected")]
ActiveAndSelected
}
Итак, в ComboBox вместо отображения Active, Selected или ActiveAndSelected я хочу отобразить DescriptionProperty для каждого значения перечисления. У меня есть метод расширения, называемый GetDescription() для перечисления:
public static string GetDescription(this Enum enumObj)
{
FieldInfo fieldInfo =
enumObj.GetType().GetField(enumObj.ToString());
object[] attribArray = fieldInfo.GetCustomAttributes(false);
if (attribArray.Length == 0)
{
return enumObj.ToString();
}
else
{
DescriptionAttribute attrib =
attribArray[0] as DescriptionAttribute;
return attrib.Description;
}
}
Итак, есть ли способ связать перечисление с ComboBox и показать его содержимое с помощью метода расширения GetDescription?
Спасибо!