首页 新闻 会员 周边

.net WINFORM combobox多列显示筛选问题

0
悬赏园豆:100 [已解决问题] 解决于 2013-07-14 22:38

我对combobox重写了下,支持多列显示,并且支持筛选,现在碰到个问题,比如我选择 商品编码为 0013,规格为45的冬菇,

 

选择后,用户想重新选择下商品,发现现在的选择项 是落在商品编码为 0012,规格为40的冬菇上面, 就是变成了 商品名称相同,但是编码,规格不同的第一个商品上面

给用户造成一种误解

这个怎么解决

老WH虎的主页 老WH虎 | 初学一级 | 园豆:112
提问于:2013-06-15 09:40
< >
分享
最佳答案
0

不会看的就是我那篇博文吧。过两天就准备升级下,支持筛选和多选。 如果你急的话加我的群或者QQ,把需求发过来,帮你屡屡。 (PS:白天公司上不了外网)

收获园豆:80
何以解忧唯有撸码 | 初学一级 |园豆:37 | 2013-06-18 16:42

昨晚给你发的demo,解决问题了吗?

何以解忧唯有撸码 | 园豆:37 (初学一级) | 2013-06-19 09:34

首先谢谢你的demo,这几天出差了,

这个demo和我想要的有点差距,晚上QQ

老WH虎 | 园豆:112 (初学一级) | 2013-06-24 17:20
其他回答(6)
0

前几天好像有人在园子里发了一篇类似功能的文章

+小马哥++ | 园豆:906 (小虾三级) | 2013-06-15 11:53

那篇我看了,是多列,但是没有筛选功能。

支持(0) 反对(0) 老WH虎 | 园豆:112 (初学一级) | 2013-06-16 00:26
0

既然你都能重写了,这里根据编号去匹配就可以了吧。不要根据名称匹配,名称肯定是匹配第一个。或者名称变成名称+规格,这样也行

清海扬波 | 园豆:825 (小虾三级) | 2013-06-15 11:53

我在OnDropDown 时间中,下拉选择项中设置 重新SelectedIndex后,都改变不了这种情况,还是选择同名称的第一项,不是具体选择的哪项

支持(0) 反对(0) 老WH虎 | 园豆:112 (初学一级) | 2013-06-16 00:23
0

应该是匹配项错误了,应该选不唯一的列作为匹配项。

幻天芒 | 园豆:37175 (高人七级) | 2013-06-15 12:30

我在OnDropDown 时间中,下拉选择项中设置 重新SelectedIndex后,都改变不了这种情况,还是选择同名称的第一项,不是具体选择的哪项

支持(0) 反对(0) 老WH虎 | 园豆:112 (初学一级) | 2013-06-16 00:23

NAME是不唯一的,名称+规格是唯一的,编码也是唯一的

但是Text 属性不可能做出显示编码,那样用户怎么辨别

支持(0) 反对(0) 老WH虎 | 园豆:112 (初学一级) | 2013-06-16 00:25

@老WH虎: 如果考虑将名称+规格合并为一个字段。这样就唯一了。如“冬菇-0012”,“冬菇-0013”。

支持(0) 反对(0) 幻天芒 | 园豆:37175 (高人七级) | 2013-06-16 09:54
0

建议用一个datagridview 放在输入框的下面不是更简单方便美观么?

xiaoZz | 园豆:120 (初学一级) | 2013-06-18 14:13
0

重写这个控件很麻烦的,要解决性能问题,推荐用第三方控件库,比如DEV

神都码农 | 园豆:251 (菜鸟二级) | 2013-06-18 14:41
0

每个选项背后的Value并不是唯一的,你3个冬菇的Value是一样的,就默认匹配了符合的第一条

收获园豆:20
Zachary_Fan | 园豆:762 (小虾三级) | 2013-06-21 23:02

3个冬菇的Value 不一样

支持(0) 反对(0) 老WH虎 | 园豆:112 (初学一级) | 2013-06-24 17:16

@老WH虎: 搜索框重新匹配的时候可能是根据你的第二列(冬菇文字所在列)来匹配的。

 尝试一下:1.把3个冬菇替换成不一样的名称。

      2.搜索框重新匹配的时候根据其选项背后的Value来匹配。

      3.搜索框重新匹配的时候根据其中的2列、或者第1列来匹配。

支持(0) 反对(0) Zachary_Fan | 园豆:762 (小虾三级) | 2013-06-26 11:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册