我有以下转换器:
public class EnumDescriptionConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter,
CultureInfo culture)
{
var enumValue = (MyEnum)value;
//GetDescription is method to read attribute string value.
return enumValue.GetDescription();
}
}
我有一个列表框:
<ListBoxItem Content=
"{Binding {x:Static Enums:MyEnum.Video}, Converter={StaticResource DescriptionConverter}}"/>
当我运行它时,我得到异常“无法将MyEnum强制转换为字符串”。转换器内的断点不会被触发。
有什么问题?
答案 0 :(得分:4)
您正在尝试将Enum绑定到Binding的Path
属性
指定Enum是Source
属性而不是
<ListBoxItem Content="{Binding
Source={x:Static Enums:MyEnum.Video},
Converter={StaticResource DescriptionConverter}}"/>