绑定Enum到DropDownList控件的方法

来源:互联网 发布:知乎91改名tossboy怎么 编辑:程序博客网 时间:2024/05/01 15:21

有时,需要将一个枚举类型绑定到DropDownList供用户选择,这主要是Enum.GetNames和Enum.GetValues的使用。

方法如下:

            dropdownlist.DataSource = Enum.GetNames(typeof(YourEnumType));
            dropdownlist.DataBind();

这样,可以直接将Enum绑定到DropDownList控件上,不过有个缺点是,DropDownList的value也是枚举的名称而不是枚举代表的数值,有时,我是需要枚举数值的,因为一般以数值方式存储到数据库。这时可以使用下面的方法:

            string[] names = Enum.GetNames(typeof(YourEnumType));
            
int[] values = (int[])Enum.GetValues(typeof(YourEnumType));
            
for (int i = 0; i < names.Length; i++)
            
{
                dropdownlist.Items.Add(
new ListItem(names[i], values[i].ToString()));
            }


中文的时候你可以这样写:

    public enum A
    
{
        壹,
        贰,
        叁
    }


你甚至可以这样写:

    public enum 我的枚举
    
{
        壹,
        贰,
        叁
    }