C# 遍历枚举类型的所有元素

唐可
唐可
发布时间:2026-10-14| 5人浏览过
原创

本文介绍如何在 C# 中通过 System.Enum 类的方法遍历枚举定义的所有成员,包括使用 GetValues 获取值数组以及 GetName 获取对应名称的具体实现方式。

结果或目标

目标是获取某个自定义枚举(如错误代码枚举)中所有已定义的字段名与其关联的整数值,并将其应用于实际场景(例如填充下拉列表数据)。

准备条件

首先需要确保项目中引用了基类库中的核心命名空间:

using System;

真实操作顺序

第1步:定义枚举结构

首先明确需要遍历的枚举类型及其成员映射关系。以下为一个定义了多种状态码的枚举示例:

public enum eErrorDetailCode : int
{
    登陆成功 = 0,
    登出 = 1,
    应用错误 = 2,
    成功 = 16,
    失败 = 17
}

第2步:获取枚举值数组

利用 System.Enum.GetValues(typeof(枚举名)) 可以返回一个包含该枚举所有底层值的整数数组。配合 foreach 语法即可逐个处理:

foreach (int myCode in Enum.GetValues(typeof(eErrorDetailCode)))
{
    // ...后续逻辑
}

第3步:解析名称并执行具体操作

在遍历过程中,可以使用 Enum.GetName 根据当前整型值反查其原始字段字符串名称,并通过 ToString() 格式化数值。最后将这些数据组装后添加到目标 UI 控件中:

    string strName = Enum.GetName(typeof(eErrorDetailCode), myCode); // 获取字段名称
    string strValue = myCode.ToString();                              // 获取转换后的字符串值

    ListItem myLi = new ListItem(strName, strValue);
    ddlType.Items.Add(myLi);                                          // 添加至 DropDownList

完成判断

当循环结束后,检查绑定数据的控件(如 ddlType)是否已包含与枚举定义一致数量的选项。若能完整显示出“登陆成功”、“登出”等所有设定的文本项,即表明遍历逻辑生效。

简要总结

以上就是C#遍历枚举类型所有元素的详细内容,更多关于C#枚举技巧的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。