WP7中的Enum.GetValues

时间:2011-05-04 05:17:13

标签: windows-phone-7

为什么Enum.GetValues()在Windows Phone 7 API中不可用,这是否意味着我应该回避Enums而选择结构或其他机制。

2 个答案:

答案 0 :(得分:15)

我遇到过这种情况。为了我的目的,我能够使用反射

foreach (var x in typeof(MyEnum).GetFields()) {
  if (x.IsLiteral) {
    // Do my stuff here
  }
}

真的取决于你在做什么。

答案 1 :(得分:5)

  

为什么Enum.GetValues()不可用   在Windows Phone 7 API中

“为什么”是因为WP7基于“Compact Framework” - 为了节省资源,紧凑框架不包含完整框架中的每个方法 - 而Enum.GetValues()就是其中之一。< / p>

  

确实   这意味着我一般应该回避   来自Enums赞成结构或   其他机制。

不 - 没有特别的理由。我建议你继续使用枚举,你会发现它们是最合适的编程解决方案。