正在将枚举与转换器绑定.未调用Converter方法



我有以下转换器:

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强制转换为字符串"。转换器内部的断点未被触发。

怎么了?

您正试图将Enum绑定到Binding的Path属性

指定Enum是Source属性,而不是

<ListBoxItem Content="{Binding
    Source={x:Static Enums:MyEnum.Video}, 
    Converter={StaticResource DescriptionConverter}}"/>

最新更新