首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

如何在ComboBox的下拉列表中加入树形控件

2012-01-07 
怎么在ComboBox的下拉列表中加入树形控件?由于商品的品名太多,下拉列表太长,想要给商品分类后使用下拉列表

怎么在ComboBox的下拉列表中加入树形控件?
由于商品的品名太多,下拉列表太长,想要给商品分类后使用下拉列表,容易选取,请教怎样在VB里建立树形下拉列表,


[解决办法]
WinForm吗? C#写的网上看到过几个 lz可以自己改造一下
CodeProject上面就有好几个,类似下面这个?可以参照一下

http://www.cnblogs.com/xiongeee/archive/2007/03/03/662468.html

[解决办法]
商品数据量大的话,如果需要在界面上放多个商品ComboBox,资源耗用大而且初始化速度受影响。

不如用文本框+右边小按钮的方式。
用户可以直接在文本框中输入编码,也可以点击小按钮,弹出一个对话框;对话框上放一个TreeView供用户浏览选择。
该对话框尽量不要卸载,通过Hide方式保留实例供多次使用。

这样的方案速度和方便性都兼顾了。

[解决办法]
作东西不用太死脑精的,你做一个文本框,旁边放个按钮“浏览”,
然后弹出窗口选择信息后返回还好吗,而且数据大的话窗口中还可以做搜索功能。
对使用用户和开发人员来说都是好事。你这么多东西用下拉来找,通常下拉现实的只有13条数据。
上千条这么个找法太累人了,一不小心丢失焦点(如弹出个QQ广告)就白选了。
[解决办法]
上面一个ComBoBox,下面一个TreeView就是这样的效果
[解决办法]
Microsoft Windows Common Controls 6.0 中有个 ImageCombo,可以指定每个项目的图片和缩进,除了没有 TreeLine 样式,完全可以表示一个树型列表。

不过还是一句话,大数据量列表不适合用 Combo 控件。
[解决办法]

探讨
上面一个ComBoBox,下面一个TreeView就是这样的效果

[解决办法]
1、用ComboBox+TreeView可以,用HOOK截取ComboBox的下拉事件,重写。
PS:网上有ComboBox+Listview的代码例子。

2、1的方法肯定不太合适,下拉一般都几项,顶多下几项。
建议用弹出式窗体来选择,这样这个窗体上可设计很多功能,
比如搜索等。

3、智能自动填写提示
就象系统的地址栏,输入c:\后会显示第一层
这个需要实现系统接口,网上也有源码,但对中文支持得不好。
我尝试修改,没有成功。
[解决办法]
用treeview就对了,一点不重量级。
至少不想要拖拽和编辑,这个在treeview里都有开关属性设置,禁止拖拽和编辑就行了。
这是直接一步到位的方法,编程序就应该这样,直观简洁,而且方便。
虽然还有其它很多方法可以实现,但以后再读起来时,很可能都看不懂现在的意图了。

热点排行