我有一个动态形式的窗体,以多种形式使用。 在这种形式中,我必须将数据从数据集绑定到datagridview.But需要3-4分钟将数据从数据集绑定到datagridview.Result来自执行的查询放在数据集中。然后这个数据集然后绑定到datagridview
dgSearch.DataSource=ds.tables[0];
但是这个语句需要时间来执行。因为我的数据集有超过10万行。如何将如此大量的数据绑定到datagridview?
我有一个C#windows应用程序。
答案 0 :(得分:0)
首先,在应用程序中绑定那么多数据的想法建议a)糟糕的架构或b)糟糕的业务需求。人们不能同时处理100,000行。如果这是一个报告,那么网格不是处理此问题的最佳方式。
如果您被迫朝这个方向前进,我会考虑某种形式的分页,并且只在任何时候显示“网格化”数据的一部分。 http://www.codeproject.com/Articles/16303/DataGrid-Paging-C-Windows-Forms
在这个方向上,您可以控制任何时候绑定的数据量。您还可以在不同的列上实现排序,以便用户可以优化他或她正在查看的内容。但是你会大大加快绑定速度,因为你一次不能绑定100K +行。
答案 1 :(得分:0)
如果您有大量记录,显示记录的最佳方式是您在gridview中进行分页。
有效分页对于处理大量记录以构建可伸缩应用程序的应用程序非常重要。
Here是一篇很好的文章。它向您展示了如何在ASP.NET Web表单上执行此操作,但是当您找到方法时,您可以在Windows窗体应用程序上执行此操作。
另外还有一个问题可能对你有帮助。 What is the fastest way to load a big data set into a GridView?适用于Windows窗体应用程序。你也可以阅读这个来解决你的问题。
希望它有所帮助。