C# 将TypeConverter用于本地化名称的System.Drawing.Color属性的toString方法
我想为.net结构属性使用TypeConverterC# 将TypeConverter用于本地化名称的System.Drawing.Color属性的toString方法,c#,properties,localization,type-conversion,C#,Properties,Localization,Type Conversion,我想为.net结构属性使用TypeConverter public class MyColorOptions { [TypeConverter(typeof(MyTypeConverter))] public Color MyColor{ get; set; } } public class MyTypeConverter : TypeConverter { public override object ConvertTo(ITypeDescriptorContext
public class MyColorOptions
{
[TypeConverter(typeof(MyTypeConverter))]
public Color MyColor{ get; set; }
}
public class MyTypeConverter : TypeConverter
{
public override object ConvertTo(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value, Type destinationType)
{
return base.ConvertTo(context, culture, value, destinationType);
}
}
从不调用ConvertTo方法。这仅适用于自行创建的复杂数据类型或类
我希望通过toString方法为color属性返回本地化的颜色名称。
可在此处找到德语颜色翻译:
我想将转换器与颜色转换器结合使用
如果你能帮助我,你会很好的 您可以向将使用类型转换器的所有枚举添加扩展方法,这非常简单:
public static class EnumExtensions
{
public static string ToDisplayString(this Enum value)
{
var converter = TypeDescriptor.GetConverter(value);
return converter.ConvertToString(value);
}
}
然后:
MyColorOptions.MyColor.ToDisplayString();