清除XamGrid中的过滤单元格值

时间:2016-05-11 14:31:01

标签: wpf xaml mvvm xamgrid

我正在使用 MVVM 架构风格处理 XamGrid ,同时使用以下代码删除过滤器,过滤器被删除但 过滤器单元< / em> 仍包含 过滤器值 ,该值应为空。

foreach (var columnBase in dataGrid.FilteringSettings.RowFiltersCollection)
 {
    var col = (RowsFilter)columnBase;
    col.Column.FilterColumnSettings.FilterCellValue = string.Empty;
 }

  dataGrid.FilteringSettings.RowFiltersCollection.Clear();

1 个答案:

答案 0 :(得分:0)

经过长时间的分析后发现你会在很多地方找到这样的代码,但最重要的是你的 FilterScope 应该设置为 ColumnLayout ,即

  

dataGrid.FilteringSettings.FilteringScope =   FilteringScope.ColumnLayout;

RowFiltersCollection rfc = dataGrid.FilteringSettings.RowFiltersCollection;
if (rfc != null)
{
  foreach (RowsFilter RF in rfc)
   {
      if (RF.Conditions.Count != 0)           
            RF.Conditions.Clear();
   }
}

dataGrid.FilteringSettings.RowFiltersCollection.Clear();