private void C1DataFilter1_FilterAutoGenerating(object sender, FilterAutoGeneratingEventArgs e) { foreach (Filter f in c1DataFilter1.Filters) { if (f.PropertyName == "Brand") { var brandFilter = f as ChecklistFilter; brandFilter.FilterSummary.Label = "Models:"; brandFilter.FilterSummary.PropertyName = "Brand"; brandFilter.FilterSummary.AggregateType = C1.DataFilter.AggregateType.Count; } if (f.PropertyName == "Model") { var modelFilter = f as ChecklistFilter; modelFilter.FilterSummary.AggregateType = C1.DataFilter.AggregateType.Max; modelFilter.FilterSummary.CustomFormat = "C0"; modelFilter.FilterSummary.Label = "Max price: "; modelFilter.FilterSummary.PropertyName = "Price"; } if (f.PropertyName == "Price") { var modelFilter = f as RangeFilter; modelFilter.Maximum = data.Max(x => (x as Car).Price); modelFilter.Minimum = data.Min(x => (x as Car).Price); modelFilter.Format = "F0"; } } }
private void C1DataFilter_FilterAutoGenerating(object sender, FilterAutoGeneratingEventArgs e) { switch (e.Property.Name) { case "Model": var modelFilter = (ChecklistFilter)e.Filter; modelFilter.SelectAll(); break; case "Brand": var brandFilter = (ChecklistFilter)e.Filter; brandFilter.SelectAll(); break; case "Liter": var literFilter = (RangeFilter)e.Filter; literFilter.Maximum = _carsTable.AsEnumerable().Max(x => x.Field <double>("Liter")); literFilter.Minimum = _carsTable.AsEnumerable().Min(x => x.Field <double>("Liter")); literFilter.Increment = 0.01; break; case "TransmissSpeedCount": var transmissFilter = (ChecklistFilter)e.Filter; transmissFilter.HeaderText = "Transmiss Speed Count"; transmissFilter.ShowSelectAll = false; transmissFilter.SelectAll(); break; case "Category": var categoryFilter = (ChecklistFilter)e.Filter; categoryFilter.ShowSelectAll = false; categoryFilter.SelectAll(); break; case "TransmissAutomatic": var taFilter = (ChecklistFilter)e.Filter; taFilter.HeaderText = "Transmiss Automatic"; taFilter.ItemsSource = new List <TransmissAutomatic>() { new TransmissAutomatic() { DisplayValue = "Yes", Value = "Yes" }, new TransmissAutomatic() { DisplayValue = "No", Value = "No" }, new TransmissAutomatic() { DisplayValue = "Empty", Value = string.Empty } }; taFilter.DisplayMemberPath = "DisplayValue"; taFilter.ValueMemberPath = "Value"; taFilter.ShowSelectAll = false; taFilter.SelectAll(); break; case "Price": var priceFilter = (RangeFilter)e.Filter; priceFilter.Maximum = _carsTable.AsEnumerable().Max(x => x.Field <double>("Price")); priceFilter.Minimum = _carsTable.AsEnumerable().Min(x => x.Field <double>("Price")); priceFilter.Increment = 1000; priceFilter.Format = "F0"; break; default: e.Cancel = true; break; } }