Telerik 数据源、分页和过滤

问题描述 投票:0回答:1

我有一个 Telerik RadGrid。 绑定到网格的初始数据源有 145 条记录。 我在网格中打开了文件管理以及分页,并且我的页面大小为 20。当我筛选到 75 条记录时,网格的 MasterTableView.Items 集合显示 20 条记录。 这与正在显示的网格中的内容相匹配。 但是,我需要对数据执行批量更改,并需要 75 条过滤记录。 网格中是否有某个位置包含 75 条过滤记录? 我想避免再次获取所有 145 条记录,然后手动筛选。

filter pagination telerik-grid
1个回答
1
投票

Telerik 不提供服务器端 API 来访问网格中过滤后的数据,但他们的论坛上提供了解决方法。

解决方案是在网格加载时保存过滤后的行主键,然后使用 ID 来获取数据。

bool flag = false;
    protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e)
    {
       if (e.CommandName == RadGrid.FilterCommandName)
        {
            flag = true;
        }
    }

     protected void RadGrid1_PreRender(object sender, EventArgs e)
        {
           if (flag)
            {
                foreach (GridDataItem grdItem in RadGrid1.Items)
                {
                    int iID = Convert.ToInt32(grdItem.GetDataKeyValue("ID").ToString());
                    .  .   .   .
                }
                flag = false;
            }
        }

有关更多信息,请查看 Telerik 网站上的以下链接: http://www.telerik.com/community/forums/aspnet/grid/how-to-get-filter-data.aspx

© www.soinside.com 2019 - 2024. All rights reserved.