用反射+特性列出所有的枚举变量及其描述信息,绑定到DropDownList上。
2005-10-17 17:31
309 查看
1。问题
在设计实体类的时候,通常我们会把某些字段设置为枚举值,例如性别:
public enum Sex:int
<asp:DropDownList Runat="server" id="ddlSex">
<asp:ListItem Value="M">男</asp:ListItem>
<asp:ListItem Value="W">女</asp:ListItem>
<asp:ListItem Value="A">不限</asp:ListItem>
</asp:DropDownList>
然后如果要取得枚举的值,则:
Sex sex = (Sex)ddlSex.SelectedValue.ToCharArray()[0];
取值的时候其实没有多大问题,问题在UI上面
首先要知道所有枚举的值:例如'W','M','A'等
需要知道枚举值的名称,通常使用中文,例如'男','女'等,界面设计人员无法确定使用什么中文描述。
枚举的项目改变的时候,所有的绑定都需要改变。
2。解决了吗?
解决描述的问题很简单,使用XML文档就可以了。
只要在项目输出的时候输出XML文档,并且文档的名字跟DLL的名字一致就可以了。
需要丰富枚举定义:
public enum Sex:int
System.Enum.GetValues(typeof(sex));
来获得所有的枚举值,然后用foreach调用:
ddlSex.Items.Clear();
foreach(Sex sex1 in System.Enum.GetValues(typeof(Sex)))
public enum Sex:int
public static DataTable EnumListTable(Type enumType)
DataTable dt = EnumListTable(typeof(Sex));
ddlSex.DataSource = dt;
ddlSex.DataTextField = "Text";
ddlSex.DataValueField = "Value";
怎么样?方便吧?而且这个是通用的函数,适合于所有Enum,
前提条件是枚举值的所占的空间大小最好不要超过int。还有就是记得写描述的值,呵呵。
第一次放首页,请大家多多指点。呵呵。
原创文章,如果有任何问题请留言或联系zellzhang@126.com
在设计实体类的时候,通常我们会把某些字段设置为枚举值,例如性别:
public enum Sex:int
<asp:DropDownList Runat="server" id="ddlSex">
<asp:ListItem Value="M">男</asp:ListItem>
<asp:ListItem Value="W">女</asp:ListItem>
<asp:ListItem Value="A">不限</asp:ListItem>
</asp:DropDownList>
然后如果要取得枚举的值,则:
Sex sex = (Sex)ddlSex.SelectedValue.ToCharArray()[0];
取值的时候其实没有多大问题,问题在UI上面
首先要知道所有枚举的值:例如'W','M','A'等
需要知道枚举值的名称,通常使用中文,例如'男','女'等,界面设计人员无法确定使用什么中文描述。
枚举的项目改变的时候,所有的绑定都需要改变。
2。解决了吗?
解决描述的问题很简单,使用XML文档就可以了。
只要在项目输出的时候输出XML文档,并且文档的名字跟DLL的名字一致就可以了。
需要丰富枚举定义:
public enum Sex:int
System.Enum.GetValues(typeof(sex));
来获得所有的枚举值,然后用foreach调用:
ddlSex.Items.Clear();
foreach(Sex sex1 in System.Enum.GetValues(typeof(Sex)))
public enum Sex:int
public static DataTable EnumListTable(Type enumType)
DataTable dt = EnumListTable(typeof(Sex));
ddlSex.DataSource = dt;
ddlSex.DataTextField = "Text";
ddlSex.DataValueField = "Value";
怎么样?方便吧?而且这个是通用的函数,适合于所有Enum,
前提条件是枚举值的所占的空间大小最好不要超过int。还有就是记得写描述的值,呵呵。
第一次放首页,请大家多多指点。呵呵。
原创文章,如果有任何问题请留言或联系zellzhang@126.com
相关文章推荐
- 用反射+特性列出所有的枚举变量及其描述信息,绑定到DropDownList上
- [转]用反射+特性列出所有的枚举变量及其描述信息,绑定到DropDownList上。
- [转]用反射+特性列出所有的枚举变量及其描述信息,绑定到DropDownList上。
- 用反射+特性列出所有的枚举变量及其描述信息,绑定到DropDownList上。
- C# 获取枚举类型中所有描述信息
- C# 获取枚举类型中所有描述信息
- 绑定变量及其相关特性分析
- 得到枚举的描述信息特性
- 通过反射得到绑定在类的属性上的特性信息
- 利用反射机制编写一个程序,这个程序能把类中所有的成员变量赋值,并把操作信息输出到控制台。
- 列出SQL SERVER 所有表,字段名,主键,类型,长度,小数位数等信息
- sql 列出SQL SERVER 所有表,字段名,主键,类型,长度,小数位数等信息
- 获取枚举描述信息(Description)
- Oracle数据库绑定变量特性及应用
- postgresql数据库查询所有字段详细信息,包括描述
- Day 07 debug调试 junit单元测试 jdk5.0新特性 泛型,枚举,静态导入,拆装箱,增强for,可变参数 反射
- 绑定变量及其优缺点
- 绑定变量及其优缺点
- 枚举当前所有的显示器信息
- Oracle数据库绑定变量特性及应用