2017-05-12 16 views
0

RadGrid에 응답하는 RadFilter가 있습니다. RadFilter.SaveSettings를 사용하여 RadFilter 상태를 데이터베이스에 저장하고 RadFilter.LoadSettings를 사용하여 RadFilter를 다시로드합니다.RadFilter - 식을 프로그래밍 방식으로 적용하는 방법

그러나 RadFilter를로드 한 후 RadGrid 목록을 새로 고치려면 '적용'버튼을 클릭해야합니다. RadFilter.LoadSetting 후에 RadGrid 필터링을 자동으로 트리거 할 수있는 방법이 있는지 알고 싶습니다.

감사합니다.

답변

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();