绑定Enum到DropDownList控件的方法


有时,需要将一个枚举类型绑定到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  我的枚举
    
{
        壹,
        贰,
        叁
    }



你可能感兴趣的:(绑定Enum到DropDownList控件的方法)