我试图找到一个简单的例子,其中枚举按原样显示.我见过的所有示例都尝试添加漂亮的显示字符串,但我不希望这种复杂性.
基本上我有一个类,它包含我绑定的所有属性,首先将DataContext设置为此类,然后在xaml文件中指定这样的绑定:
<ComboBox ItemsSource="{Binding Path=EffectStyle}"/>
Run Code Online (Sandbox Code Playgroud)
但是这并没有在ComboBox
as项中显示枚举值.
我想创建一个泛型方法,用于将任何System.Enum派生类型转换为其对应的整数值,而不进行转换,最好不解析字符串.
例如,我想要的是这样的:
// Trivial example, not actually what I'm doing.
class Converter
{
int ToInteger(System.Enum anEnum)
{
(int)anEnum;
}
}
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.Resharper报告您无法将类型为"System.Enum"的表达式转换为"int"类型.
现在我已经提出了这个解决方案,但我宁愿提高效率.
class Converter
{
int ToInteger(System.Enum anEnum)
{
return int.Parse(anEnum.ToString("d"));
}
}
Run Code Online (Sandbox Code Playgroud)
有什么建议?
我是C#的新手,我有一个问题,
我有一个类似的枚举
public enum
{
[Description("1,2,3")]
123,
[Description("3,4,5")]
345,
[Description("6,7,8 ")]
678,
}
Run Code Online (Sandbox Code Playgroud)
现在我希望枚举描述绑定到下拉列表..有人可以帮助我..
提前致谢!
PS:如果我不清楚,我很抱歉.让我知道我是否需要更具体
我想知道是否有一种方法可以检查该值是否是枚举的描述。我知道
Enum.IsDefined(typeof(EnumEntity),value)
Run Code Online (Sandbox Code Playgroud)
可以用来检查值是否在枚举中,但是描述怎么样?
例如,
public enum LicenseTypes
{
[Description("A License")]
A,
[Description("B License")]
B,
[Description("C License")]
C
}
Run Code Online (Sandbox Code Playgroud)
有没有办法检查“A License”是枚举 LicenseTypes 的描述?