我有一个响应RadGrid的RadFilter。我已成功执行RadFilter.SaveSettings将RadFilter状态保存到数据库中,并使用RadFilter.LoadSettings将RadFilter加载回来。
但是,加载RadFilter后,我需要点击“应用”按钮刷新我的RadGrid列表。我可以知道在RadFilter.LoadSetting之后是否有任何方法可以自动触发RadGrid的过滤?
感谢。
答案 0 :(得分:0)
无法找到任何有用的功能,我做了一个解决方法。在Apply Expression事件中,始终将过滤器表达式存储在隐藏字段中。
protected void rftWarehouseItem_ApplyExpressions(object sender, RadFilterApplyExpressionsEventArgs e)
{
RadFilterSqlQueryProvider provider = new RadFilterSqlQueryProvider();
provider.ProcessGroup(e.ExpressionRoot);
hdfFilterExpression.Value = provider.Result;
rgdWarehouseItem.MasterTableView.FilterExpression = provider.Result;
rgdWarehouseItem.Rebind();
}
在保存到数据库期间,我将hdfFilterExpression.Value存储在数据库中。当从数据库再次检索记录时,只需重新绑定gridview。
rgdWarehouseItem.MasterTableView.FilterExpression = record.FilterExpression;
rgdWarehouseItem.Rebind();
答案 1 :(得分:0)
就去做:
this.RadFilter1.FireApplyCommand();
附言将 RadFilter1
更改为您的对象名称。