ComboBox 自定义绑定解决方法(WinForm)

以前一直从B/S项目开发,近期在做WinForm项目
虽然出自同祖,但还是有些小问题搞不太明白!
昨天被ComboBox的绑定困扰N久,查询之后,方可解决
现将解决方法记录下来,备用。

1.用ComboBox绑定到数据源,应该来说比较简单:
设置DataSource至对应数据源,设置DisplayName对应到显示字段,搞定。
2.在自定义数据绑定的时候,就出现一点问题
分析问题的本质,应当是对ComboBox的绑定机理理解不够深所至,加至为以前使用过的控件困饶所至
下面是解决办法:
 1 None.gif public   static  IList GetBind()
 2 ExpandedBlockStart.gifContractedBlock.gif dot.gif {
 3InBlock.gif            List<EntityClass> ila = new List<EntityClass>(3);
 4InBlock.gif            EntityClass dec = new EntityClass();
 5InBlock.gif            dec.Name = "N";
 6InBlock.gif            dec.Value = "N";
 7InBlock.gif            ila.Add(dec);
 8InBlock.gif            dec = new DEClassified();
 9InBlock.gif            dec.Name = "W";
10InBlock.gif            dec.Value = "W";
11InBlock.gif            ila.Add(dec);
12InBlock.gif            dec = new DEClassified();
13InBlock.gif            dec.Name = "L";
14InBlock.gif            dec.Value = "L";
15InBlock.gif            ila.Add(dec);
                   return ila;
16ExpandedBlockEnd.gif}
通过上面的方法获取绑定数据源,然后通过下面绑定代码绑定即可
1 None.gif System.Collections.IList il  =  CommonMethod.GetBind();
2 None.gif this .cb1.DataSource  =  il;
3 None.gif this .cb1.DisplayMember  =   " Name " ;
4 None.gif this .cb1.ValueMember  =   " Value " ;
5 None.gif this .cb1.SelectedIndex  =   0 ;

注意在上面代码中,this.cb1.ValueMember必须设置值,为在保存时,读取的项,但在使用数据源绑定时就不必!

参考:
http://www.window07.com/dev/web/net/2006-2-28/k38279.htm
http://www.cnblogs.com/rick/archive/2006/07/11/cmbselidx.html

转载于:https://www.cnblogs.com/linfuguo/archive/2006/10/12/527097.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值