Обычно его следует преобразовывать в реперентацию String напрямую, связывая ... но если нет, вы можете написать конвертер значений
public class EnumConverter : IValueConverter
{
#region Implementation of IValueConverter
/// <summary>
/// Converts a value.
/// </summary>
/// <returns>
/// A converted value. If the method returns null, the valid null value is used.
/// </returns>
/// <param name="value">The value produced by the binding source.
/// </param><param name="targetType">The type of the binding target property.
/// </param><param name="parameter">The converter parameter to use.
/// </param><param name="culture">The culture to use in the converter.
/// </param>
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return ((MyEnum)value).ToString() }
/// <summary>
/// Converts a value.
/// </summary>
/// <returns>
/// A converted value. If the method returns null, the valid null value is used.
/// </returns>
/// <param name="value">The value that is produced by the binding target.
/// </param><param name="targetType">The type to convert to.
/// </param><param name="parameter">The converter parameter to use.
/// </param><param name="culture">The culture to use in the converter.
/// </param>
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
#endregion
}
# endregion
Вы можете использовать конвертер следующим образом
<.... Binding="{Binding Path=MyObject,Converter="{StaticResource ResourceKey=enumConverter}}"
<Window.Resources>
<local:EnumConverter x:Key="enumConverter"/>
</WindowResources>
Я думаю, что вам не хватает .... вам нужно сделать статический ресурс с таким именем