我有一个webdatagrid,它保留了在文本框中搜索的数据。我注意到当我过滤/页面/排序数据时,在清除其中任何一个之前,我进行了新的搜索,然后新的搜索结果保留了以前的过滤器/页面/排序条件。在重新加载页面之前,我没有清除它。我在客户端有搜索方法,我使用以下代码不起作用:
function btnSearch_click(sender, evntArgs){
var grid = $find('<%= grid1.ClientID %>');
grid.get_behaviors().get_filtering().clearColumnFilters();
grid.get_behaviors.get_sorting().clearColumnSorting();
grid.get_behaviors.get_paging().clearPaging();
}
此代码不正确。
因为我的网格在按下搜索按钮时加载。我在服务器端使用了以下内容:
if (search == "True")
{
var filtering = grid1.Behaviors.Filtering;
grid1.Behaviors.Sorting.SortedColumns.Clear();
grid1.Behaviors.Paging.PageIndex = 0;
grid1.Behaviors.Filtering.ClearBehaviorColumnInfo();
grid1.Behaviors.Filtering.ColumnFilters.Clear();
filtering.FilterType = Infragistics.Web.UI.GridControls.FilteringType.ExcelStyleFilter;
grid1.Behaviors.Filtering.ApplyFilter();
}
我想实现 excel 样式过滤器,而 Infragistics 在清除它后无法重现 excel 过滤器,我必须先应用行类型过滤器,然后将过滤器类型更改为 excel 类型。