Bueno, el problema es que tengo esta enumeración, PERO no quiero que combobox muestre los valores de la enumeración. Esta es la enumeración:WPF binding ComboBox to enum (con un giro)
public enum Mode
{
[Description("Display active only")]
Active,
[Description("Display selected only")]
Selected,
[Description("Display active and selected")]
ActiveAndSelected
}
Así, en el cuadro combinado en lugar de mostrar activo, seleccionan o ActiveAndSelected, quiero mostrar la propiedaddescripcion para cada valor de la enumeración. Tengo un método de extensión llamado GetDescription() para la enumeración:
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;
}
}
Entonces, ¿hay alguna manera de obligar a la enumeración de ComboBox Y le mostrará su contenido con el método de extensión GetDescription?
Gracias!
Amigo, la reflexión no es _that_ lento, sobre todo en comparación con el tiempo que toma para mostrar una interfaz gráfica de usuario. No esperaría que sea un problema. –
Bueno, no tome mi palabra para eso. La publicación mencionada anteriormente dice que es una preocupación. –
Pero no cita ningún resultado de perfil. El autor estaba preocupado por eso, pero eso no significa que realmente haya sido un problema. –