关于在控件中实现数据分页的功能

westbulls 2008-03-04 04:57:28
有些控件,比如COMBOBOX如果关联的数据源有上百万笔数据,直接绑定数据会花费大量时间,我想可否实现数据分页或者分块提取。当然我也想过其他方案解决,比如再开一个线程专门加载数据;再比如要求用户录入时的条件达到一定长度后再开启Autocomplete功能,主要目的是使加载的数据更少一些.....
希望听取一下大家的意见(可能控件本身就有这种功能,只是我还没发现,或者vs2008中已经有了,呵呵)
...全文
120 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
westbulls 2008-03-05
  • 打赏
  • 举报
回复
直接取几百万条数据是有点夸张,我当然要控制让用户至少输入一个字符,但是一次取几万条数据的渐进式搜索当然也有可能,如果每次都将全部记录取来,假如是一个多栏的combobox,那数据量也是不小的。如果要分批取,那就要考虑如何分批取数据了。如果要用现有控件,则即要控制鼠标事件,又要控制键盘事件。我现在的想法是用户在看数据时如果使用翻页键比如pageup,pagedown触发获取分页数据(有现成的存储过程),这个比较好实现(必竞新旧数据不用交差出现)。但对于使用键盘上的上下键实现翻页和对于滚动条移动实现的翻页就不太好控制。还有上述分页方式,一次取的数据比较少,和数据库的交互也比较多,效率也不太高。不知道还有没有更完美点的方案。(当然,如果假定用户只关心当前显示出来的数据,问题就会简单了^-^)
stning 2008-03-04
  • 打赏
  • 举报
回复
COMBOBOX绑定百万笔数据???换个思路吧。楼主
RongCha040 2008-03-04
  • 打赏
  • 举报
回复
没有像你这么样实现功能的,最好在设计数据库的时候要考虑.

如果你真要这样做,建议用分页存储
changjiangzhibin 2008-03-04
  • 打赏
  • 举报
回复
可做成N级联动菜单,按类别区分
chengqscjh 2008-03-04
  • 打赏
  • 举报
回复
非要加,就自定义控件,将分页功能写在里面就可以了
priwilliam 2008-03-04
  • 打赏
  • 举报
回复
ls说得有道理
blestcc 2008-03-04
  • 打赏
  • 举报
回复
COMBOBOX绑定百万笔数据,这样会不会被用户海扁啊
csrwgs 2008-03-04
  • 打赏
  • 举报
回复
没有人会翻阅百万比数据的,
最好加上搜索条件,并在允许的情况下用游标或sql语句来分页显示
kbryant 2008-03-04
  • 打赏
  • 举报
回复
进来学习了
rodking 2008-03-04
  • 打赏
  • 举报
回复
做成google搜索样式
xiaoyuzi 2008-03-04
  • 打赏
  • 举报
回复
每次加载可见的那些数据

110,570

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧