我有一个组合,其来源是枚举。现在,在其他值中(比如 value1、value2

等)有一项 Changes(%) 将显示在组合中。

如何在枚举中定义 Changes(%)?

使用 C#3.0

谢谢

最佳答案

你不能。枚举值名称必须是有效的 C# 标识符。您不应该尝试在其中放置显示名称。

相反,考虑使用 [Description] 属性装饰每个值,您可以通过反射获取该属性:

public enum ChangeType
{
    [Description("Changes (%)")]
    PercentageChanges,

    [Description("Changes (absolute)")]
    AbsoluteChanges
}

或者定义资源,可能使用枚举值名称作为资源键。除了其他任何事情外,这对于 i18n 目的会更好,但如果您不需要将应用程序国际化,则会有更多工作。

编辑: Here's an article going into more detail

10-08 14:04