【发布时间】:2014-04-22 21:03:31
【问题描述】:
我有一个包含 3000 行的 DevExpress 网格视图,每行有 10 个作为细节(这意味着当网格加载时我有 30000 个项目要加载)
加载所有数据需要很长时间,所以有什么方法可以显示例如 100 行,当用户使用自动过滤器时,我会显示所需的行?
示例 http://demos.devexpress.com/aspxgridviewdemos/filtering/filterrow.aspx
我尝试使用 Skip and Take(使用 LINQ),但这并不是我真正想要的,此外我还想使用网格的自动过滤器。
public static BindingList<patient> getObjectUsingLinq(string sql = "", int skipCount = 0, int takeCount = 0)
{
var gsData = GetDataContext();
var query = (from q in gsData.patient
orderby q.nom
select q);
return new BindingList<patient>(LinqHelper.DoSortPaginate(query, "", skipCount, takeCount).ToList());
}
并将其绑定到我调用的网格
listPatient = Patients.getObjectUsingLinq();
myGrid.DataSource = listPatient ;
【问题讨论】:
-
在我们查看之前向我们展示您的代码。如果只有3000行应该很快
-
DoSortPaginate的实现看起来如何,速度慢时使用的takeCount是什么?
标签: c# devexpress gridcontrol