# Filter & Order var columns = EnumerateColumns(); var adjustedFilterIndex = AdjustFilterIndex(columns, filterSettings); TODO: OrderIndex ... var filterEngine = new(columns, filterSettings); columns = columns.Where(IsIncluded); var rows = BuildRows(columns) .Where(filterEngine.Filter) .OrderBy(Order); Filter(row) { var Cell[] row; var column = row.FirstOrDefault(c => c.Id = FilterId); }