protected virtual ListFilterSelectedMode GetGridFilteredValues( FilterDescriptorCollection descriptorCollection, ref RadListFilterDistinctValuesTable selectedValuesList, ref RadListFilterDistinctValuesTable excludedValuesList) { ListFilterSelectedMode filterSelectedMode = ListFilterSelectedMode.All; foreach (FilterDescriptor descriptor in (Collection <FilterDescriptor>)descriptorCollection) { if (descriptor is CompositeFilterDescriptor) { filterSelectedMode = this.GetGridFilteredValues(((CompositeFilterDescriptor)descriptor).FilterDescriptors, ref selectedValuesList, ref excludedValuesList); } else if (descriptor.PropertyName == this.DataColumn.Name) { switch (descriptor.Operator) { case FilterOperator.None: case FilterOperator.IsLike: case FilterOperator.IsNotLike: case FilterOperator.IsLessThan: case FilterOperator.IsLessThanOrEqualTo: case FilterOperator.IsGreaterThanOrEqualTo: case FilterOperator.IsGreaterThan: case FilterOperator.StartsWith: case FilterOperator.EndsWith: case FilterOperator.Contains: case FilterOperator.NotContains: case FilterOperator.IsContainedIn: case FilterOperator.IsNotContainedIn: filterSelectedMode = ListFilterSelectedMode.None; continue; case FilterOperator.IsEqualTo: selectedValuesList.Add(descriptor.Value); filterSelectedMode = ListFilterSelectedMode.Custom; continue; case FilterOperator.IsNotEqualTo: excludedValuesList.Add(descriptor.Value); filterSelectedMode = ListFilterSelectedMode.Custom; continue; case FilterOperator.IsNull: return(ListFilterSelectedMode.Null); case FilterOperator.IsNotNull: return(ListFilterSelectedMode.NotNull); default: continue; } } } return(filterSelectedMode); }
private void UpdateSelectionMode() { if (this.allNode.CheckState == Telerik.WinControls.Enumerations.ToggleState.On && !this.isFiltered) { this.selectedMode = ListFilterSelectedMode.All; } else if (this.nullNode.CheckState == Telerik.WinControls.Enumerations.ToggleState.On) { this.selectedMode = ListFilterSelectedMode.Null; } else if (this.nonNullNode.CheckState == Telerik.WinControls.Enumerations.ToggleState.On) { this.selectedMode = ListFilterSelectedMode.NotNull; } else if (this.selectedValues.Count > 0) { this.selectedMode = ListFilterSelectedMode.Custom; } else { this.selectedMode = ListFilterSelectedMode.None; } }