【发布时间】:2010-10-12 12:32:13
【问题描述】:
我正在编写一个使用许多枚举的多语言应用程序,我希望实现以下目标:
- 将枚举名称显示为本地化字符串
- 使用属性提供本地化描述
- 启用语言敏感的枚举解析回 int 值
我热衷于使用属性 + 资源文件来装饰枚举,以便可以从运行时类型信息中获取本地化字符串。在声明一个带有静态成员而不是枚举的静态类之前,我一直在走这条路,但这带来的问题与它解决的问题一样多。
某种基于 TypeDescriptor 的机制是否合适?甚至可能?
此外 - 如何以一种干净、通用、可重复使用的方式实现目标 3?
自从提出这个问题以来,我已经完成了需要可本地化枚举显示的开源库。我采用了实现 TypeConverters 的技术。完整源代码在http://measures.codeplex.com/
【问题讨论】:
-
+1 我喜欢度量库。
标签: c# localization internationalization enums