C# 在Silverlight 4中使用大型数据集

C# 在Silverlight 4中使用大型数据集,c#,silverlight,silverlight-4.0,C#,Silverlight,Silverlight 4.0,我想利用数据的异步加载,因为我的用户可能有潜在的连接。他们有可能从数千条记录中提取数据编号,有时甚至更多。我现在没有一个数据源可以提供给我数千条记录。我只想确认,当数据集的其余部分在后台异步加载时,用户将能够看到网格或列表框的内容。看起来数据虚拟化可能是一种选择,但我发现的文章要么是垃圾,要么是基于旧版本的SL。有人有任何指向和POC的链接或这种行为的示例吗 如果我在我的列表框上启用datapaging,那么在获取剩余数据时,第一页数据会显示在屏幕上吗?还是只在用户导航到下一页时加载数据?您可以

我想利用数据的异步加载,因为我的用户可能有潜在的连接。他们有可能从数千条记录中提取数据编号,有时甚至更多。我现在没有一个数据源可以提供给我数千条记录。我只想确认,当数据集的其余部分在后台异步加载时,用户将能够看到网格或列表框的内容。看起来数据虚拟化可能是一种选择,但我发现的文章要么是垃圾,要么是基于旧版本的SL。有人有任何指向和POC的链接或这种行为的示例吗


如果我在我的列表框上启用datapaging,那么在获取剩余数据时,第一页数据会显示在屏幕上吗?还是只在用户导航到下一页时加载数据?

您可以利用数据虚拟化

  • 使要创建的UI元素的数量与所创建的内容成比例 使用virtualzingstackpanel在屏幕上可见。isvirtualization=“True”

  • 让框架回收项目容器,而不是(重新)创建 每次,通过设置 virtualizengstackpanel.VirtualizationMode=“回收”

  • 当滚动条处于活动状态时,使用 ScrollViewer.IsDeferredScrollingEnabled=“True”。请注意,这只是 通过等待用户发布,提高感知性能 滚动条拇指用于更新内容。然而,我们将看到这一点 它还可以提高以下场景中的实际性能
上面的文本来自Bea Stollinz的优秀作品,为WPF编写,但也应该在Silverlight中采用


您还可以利用.NET异步编程模型,如和。

您可以利用数据虚拟化

  • 使要创建的UI元素的数量与所创建的内容成比例 使用virtualzingstackpanel在屏幕上可见。isvirtualization=“True”

  • 让框架回收项目容器,而不是(重新)创建 每次,通过设置 virtualizengstackpanel.VirtualizationMode=“回收”

  • 当滚动条处于活动状态时,使用 ScrollViewer.IsDeferredScrollingEnabled=“True”。请注意,这只是 通过等待用户发布,提高感知性能 滚动条拇指用于更新内容。然而,我们将看到这一点 它还可以提高以下场景中的实际性能
上面的文本来自Bea Stollinz的优秀作品,为WPF编写,但也应该在Silverlight中采用


您还可以利用.NET异步编程模型,如、.

搜索
PagedCollectionView
和/或DomainDataSources和RIA服务。我们用这个来收回100000条记录。它会调回分页数据,并延迟加载您告诉它的内容。看起来我将选择DomainDataSources路线。谢谢你的意见!搜索
PagedCollectionView
和/或域数据源和RIA服务。我们用这个来收回100000条记录。它会调回分页数据,并延迟加载您告诉它的内容。看起来我将选择DomainDataSources路线。谢谢你的意见!