我正在以小部分分解我的项目,其中一个部分涉及加载一个可能有大量记录的网格(数据库中可能有多达1000条记录)。
理想情况下,我想要某种机制,当用户滚动网格时,会检索到更多数据。
我已经读过某些控件(带有RIA的数据采集器)这样做但我想知道如何自己实现这个或者做一些类似的事情?
我正在考虑一次首先加载50条记录,当用户在第50条记录附近滚动时,再将另外50条记录作为开始,依此类推。不知道我是怎么做的但是这感觉不对或者我是否应该在网格中加载记录的id然后让每一行通过异步线程加载自己但是然后我为每条记录命中我的数据库?
由于
JD。
答案 0 :(得分:1)
听起来就像是在描述数据的虚拟化。 Xceed似乎正在开发具有此功能的商业控件,但到目前为止还没有发布任何内容(参见Xceed DataGrid for Silverlight Tech Preview! )。对于来自WPF世界的一些想法,您可以查看:
答案 1 :(得分:0)
我刚刚发布了一些文章,其中包含一些示例代码,描述了如何在不使用任何第三方组件的情况下在Silverlight中进行隐形分页/数据虚拟化。
阅读introductory post以了解the sample,然后使用Digging into VirtualCollection进行跟进。