在.Net中将Enum绑定到ComboBox控件 (思想适用于Asp.net和WinForm)
2008-05-06 08:25
501 查看
此文为我在博客园中的第一篇文章,这是个不错的地方,记录项目开发中的点点滴滴。To share is a point J。文章有何不清指出,请大家指教。
言归正传,相信大家不会陌生如何将自定义的enum绑定到drop down list控件,即利用.net自带的枚举工具类Enum的GetNames方法和GetValues方法。
但有这样一种情况,假设我们定义的枚举OpportunityInfoTypes中存在一个枚举项的名称为NewOpportunity,值为2。但是我们想绑定到ComboBox控件时,界面上显示 New Opportunity (注意New和Opportunity中间有个空格),并且当这个ComboBox item被选中时,选中的value为2。
通过下面步骤可以实现:
1,定义枚举,这里注意,在每个枚举项前添加Description属性类修饰,此类有个构造是允许传入一个字符串值,当然字符串中可以包括任意字符了,包括空格。注意:Description类属于System.ComponentModel namespace下!
1 public enum OpportunityInfoTypes
2 public class EnumDescConverter : System.ComponentModel.EnumConverter
5
3,利用我们先前定义的“工具”类,实现ComboBox控件绑定:
1 //清空combobox所有项
2 YourComboBoxControl.Items.Clear();
3
4 EnumDescConverter enumdescconverter = new EnumDescConverter(typeof(OpportunityInfoTypes));
5 string[] names = Enum.GetNames(typeof(OpportunityInfoTypes));
6 int[] values = (int[])Enum.GetValues(typeof(OpportunityInfoTypes));
7
8 for (int i = 0; i < names.Length; i++)
9
请注意这句代码(string)enumdescconverter.ConvertTo(names[i], typeof(string)),用于根据枚举项名字获得相应的Description。
嗯,就写到这里吧J,good luck everybody.
言归正传,相信大家不会陌生如何将自定义的enum绑定到drop down list控件,即利用.net自带的枚举工具类Enum的GetNames方法和GetValues方法。
但有这样一种情况,假设我们定义的枚举OpportunityInfoTypes中存在一个枚举项的名称为NewOpportunity,值为2。但是我们想绑定到ComboBox控件时,界面上显示 New Opportunity (注意New和Opportunity中间有个空格),并且当这个ComboBox item被选中时,选中的value为2。
通过下面步骤可以实现:
1,定义枚举,这里注意,在每个枚举项前添加Description属性类修饰,此类有个构造是允许传入一个字符串值,当然字符串中可以包括任意字符了,包括空格。注意:Description类属于System.ComponentModel namespace下!
1 public enum OpportunityInfoTypes
2 public class EnumDescConverter : System.ComponentModel.EnumConverter
5
3,利用我们先前定义的“工具”类,实现ComboBox控件绑定:
1 //清空combobox所有项
2 YourComboBoxControl.Items.Clear();
3
4 EnumDescConverter enumdescconverter = new EnumDescConverter(typeof(OpportunityInfoTypes));
5 string[] names = Enum.GetNames(typeof(OpportunityInfoTypes));
6 int[] values = (int[])Enum.GetValues(typeof(OpportunityInfoTypes));
7
8 for (int i = 0; i < names.Length; i++)
9
请注意这句代码(string)enumdescconverter.ConvertTo(names[i], typeof(string)),用于根据枚举项名字获得相应的Description。
嗯,就写到这里吧J,good luck everybody.
相关文章推荐
- asp.net中将数据库绑定到DataList控件的实现方法与实例代码
- asp.net2.0中Gridview控件中如何绑定dropdownlist控件-.NET技术/ASP.NET
- .Net平台Winform两个ComboBox控件绑定同一个数据源
- 绑定Enum到ASP.NET数据绑定控件的完美解决方案[05/26修订]——增加支持第三方枚举描述,支持二进制与过的枚举值
- 绑定Enum到ASP.NET数据绑定控件的完美解决方案[05/26修订]——增加支持第三方枚举描述,支持二进制与过的枚举值
- Asp.Net 将枚举类型(enum)绑定到ListControl(DropDownList)控件
- .Net平台Winform两个ComboBox控件绑定同一个数据源
- .Net平台Winform两个ComboBox控件绑定同一个数据源的问题
- .Net Winform和.Net webform(asp.net)中将图片存入sqlserver中并读取显示的方法
- asp.net中将数据库绑定到DataList控件的实现方法与实例代码
- asp.net中将数据库绑定到DataList控件的实现方法与实例代码
- .Net中导出数据到Excel(asp.net和winform程序中)
- asp.net 在使用repeater控件时截取绑定字符方法
- Asp.net 2.0 中将网站首页生成静态页的一个比较好的方法 - 清清月儿 .NET万花筒 Asp.net技术 Asp.net教程 Asp.net源码 Asp.net基础 Asp.net控件 Asp.net入门 - CSDNBlog
- ASP.NET数据绑定GridView控件使用技巧
- winform combobox控件绑定 分类: WinForm 2014-04-17 14:34 118人阅读 评论(0) 收藏
- asp.net动态生成控件,并为控件绑定事件
- asp.net控件开发基础(17) --------初识数据绑定控件
- asp.net列表控件在无法确定列的时候,如何绑定
- 适用于 ASP.NET 和 Windows 窗体的 Microsoft 图表控件