private void CreateInnerFilter(PropertyValidate propertyInfo, KvP property) { var filter = new PropertiesFilter(propertyInfo.PropertyType); switch (new FilterEditor(filter).ShowDialog()) { case DialogResult.OK: property.Value = filter; bsFilters.ResetCurrentItem(); break; case DialogResult.Cancel: break; case DialogResult.Abort: property.Value = null; bsFilters.ResetCurrentItem(); break; } }
private void CreateDateTimeFilter(PropertyValidate propertyInfo, KvP property) { Func <DateTime, bool> Between(DateTime from, DateTime to) => src => from <= src && src <= to; var intervalPicker = new IntervalPicker(); switch (intervalPicker.ShowDialog()) { case DialogResult.OK: property.Value = Between(intervalPicker.From, intervalPicker.To); bsFilters.ResetCurrentItem(); break; case DialogResult.Cancel: break; case DialogResult.Abort: property.Value = null; bsFilters.ResetCurrentItem(); break; } }