1

列挙型の要素を反復処理する方法はありますか?何かのようなもの:

public enum MyEnum
{
   One,
   Two,
   Three,
}

foreach(var temp in MyEnum)
{
    //Do something
}

私は反射か何かによってそれが可能でしょうか?

4

4 に答える 4

3

System.Array Enum.GetValues(Type)メソッドを使用します。

 foreach(var temp in Enum.GetValues(typeof(MyEnum)))
  {
      //code
   }
于 2012-08-30T10:00:03.360 に答える
2

使用Enum.GetValues(typeof(MyEnum))

foreach(MyEnum temp in Enum.GetValues(typeof(MyEnum))) 
{ 
    //Do something 
}

注意:強い型の配列を返さないため、MyEnum tempの代わりに使用します。var tempGetValues

于 2012-08-30T10:00:01.630 に答える
0
foreach (var name in Enum.GetNames(typeof(MyEnum))
于 2012-08-30T10:00:31.160 に答える
0
var test = Enum.GetValues(typeof(MyEnum));
foreach (MyEnum e in test)
{
    Console.Write(e);
}

Enum.GetValuesを参照してください

于 2012-08-30T10:01:02.067 に答える