gpt4 book ai didi

silverlight - 遍历Silverlight中的枚举?

转载 作者:行者123 更新时间:2023-12-03 08:54:03 24 4
gpt4 key购买 nike

在.Net中,可以使用进行迭代遍历

System.Enum.GetNames(typeof(MyEnum)) 

要么
System.Enum.GetValues(typeof(MyEnum))

但是,在Silverlight 3中,未定义Enum.GetNames和Enum.GetValues。有人知道替代品吗?

最佳答案

或使用linq强类型输入,如下所示:

    public static T[] GetEnumValues<T>()
{
var type = typeof(T);
if (!type.IsEnum)
throw new ArgumentException("Type '" + type.Name + "' is not an enum");

return (
from field in type.GetFields(BindingFlags.Public | BindingFlags.Static)
where field.IsLiteral
select (T)field.GetValue(null)
).ToArray();
}

public static string[] GetEnumStrings<T>()
{
var type = typeof(T);
if (!type.IsEnum)
throw new ArgumentException("Type '" + type.Name + "' is not an enum");

return (
from field in type.GetFields(BindingFlags.Public | BindingFlags.Static)
where field.IsLiteral
select field.Name
).ToArray();
}

关于silverlight - 遍历Silverlight中的枚举?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1038234/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com