Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 枚举上的迭代?_C#_Enums - Fatal编程技术网

C# 枚举上的迭代?

C# 枚举上的迭代?,c#,enums,C#,Enums,可能重复: 嗨,我想知道的是,假设我定义一个枚举,比如 enum color { red=4; blue=5; gray=6; green=8; } 所以我们可以用for循环来打印常量的值,我的意思是我们可以通过循环来控制它; 另一个问题是我们是否可以将其与下拉列表(如数组)集成。我的意思是,当我们在侧数组中声明一个元素时,假设我写的是相同的颜色元素,并且我们可以在asp.net中使用列表或下拉列表(简单的单词绑定控件)添加这些元素,我们可以使用enum执行相

可能重复:

嗨,我想知道的是,假设我定义一个枚举,比如

enum color
{
    red=4;
    blue=5;
    gray=6;
    green=8;
}
所以我们可以用for循环来打印常量的值,我的意思是我们可以通过循环来控制它; 另一个问题是我们是否可以将其与下拉列表(如数组)集成。我的意思是,当我们在侧数组中声明一个元素时,假设我写的是相同的颜色元素,并且我们可以在asp.net中使用列表或下拉列表(简单的单词绑定控件)添加这些元素,我们可以使用enum执行相同的操作。

使用:

我想这可能回答了你所有的问题,但我并没有真正理解下半场的内容。如果您仍然需要帮助,请编辑您的问题以使其更清晰。

使用:


我想这可能回答了你所有的问题,但我并没有真正理解下半场的内容。如果您仍然需要帮助,请编辑您的问题以使其更清晰。

使用静态Enum.GetValues()方法:


使用静态Enum.GetValues()方法:


当然,如果他把自己的颜色存储为,例如,红色的4(与红色的正确数字表示相反),这个方法就行不通了?@Blam:恐怕我不明白你的意思。你能澄清你的答案吗,先生,我是指你对第二个问题的评论吗?foreach(int I在Enum.GetValue(typeof(color)){console.writeline(I);}它将打印出4,5,6,8它有什么问题..我被你的评论搞糊涂了,你能澄清你的想法吗,先生。@Nishant:你在那里隐式地转换到
int
-如果你把变量改为
Color
类型,那就好了。当然,如果他把他的颜色存储为,例如,红色的4(与正确的红色数字表示相反)这个方法行不通?@Blam:恐怕我不明白你的意思。你能澄清你的答案吗,先生,我是指你对第二个问题的评论吗?foreach(int I in Enum.GetValue(typeof(color)){console.writeline(I);}它会打印出4,5,6,8,里面有什么问题。我被你的评论搞糊涂了。你能澄清你的想法吗,先生。@Nishant:你在那里隐式地转换到
int
-如果你把变量改成
Color
类型,那就好了。干净又好,只有一个例外,“Color”类型应该是“Color”:PClean和nice,但有一个例外,“color”类型应为“color”。:P
Color[] colors = (Color[]) Enum.GetValues(typeof(Color));
foreach (color value in Enum.GetValues(typeof(color)))
{
  //Do something here
}