private void RebindData() { filterObjects.Clear(); const int importantFieldsCount = 6; for (var i = 0; i < PerformerStatField.fields.Count; i++) { var field = PerformerStatField.fields[i]; if (string.IsNullOrEmpty(field.ExpressionParamTitle)) { continue; } var filterObject = new FilterObject(field) { Group = i < importantFieldsCount?Localizer.GetString("TitlePrimaries") : Localizer.GetString("TitleAdditionals") }; filterObjects.Add(filterObject); } fastGrid.DataBind(filterObjects); }
public TopFilterControl() { InitializeComponent(); // 4 refresh button refreshButtonColors = new[] { refreshButton.BackColor, HslColor.AdjuctBrightness(refreshButton.BackColor, 0.9f), HslColor.AdjuctBrightness(refreshButton.BackColor, 0.85f), HslColor.AdjuctBrightness(refreshButton.BackColor, 0.8f), HslColor.AdjuctBrightness(refreshButton.BackColor, 0.85f), HslColor.AdjuctBrightness(refreshButton.BackColor, 0.9f), refreshButton.BackColor, HslColor.AdjuctBrightness(refreshButton.BackColor, 1.1f), HslColor.AdjuctBrightness(refreshButton.BackColor, 1.15f), HslColor.AdjuctBrightness(refreshButton.BackColor, 1.2f), HslColor.AdjuctBrightness(refreshButton.BackColor, 1.15f), HslColor.AdjuctBrightness(refreshButton.BackColor, 1.1f) }; var blank = new FilterObject(); fastGrid.Columns.Add(new FastColumn(blank.Property(p => p.Selected), "*") { ColumnWidth = 30, ImageList = gridImageList, IsHyperlinkStyleColumn = true, HyperlinkActiveCursor = Cursors.Hand, SortOrder = FastColumnSort.Descending }); fastGrid.Columns.Add(new FastColumn(blank.Property(p => p.Group), Localizer.GetString("TitleGroup")) { ColumnWidth = 120, SortOrder = FastColumnSort.Descending }); fastGrid.Columns.Add(new FastColumn(blank.Property(p => p.Title), Localizer.GetString("TitleCriterion")) { //SortOrder = FastColumnSort.Ascending }); fastGrid.Columns.Add(new FastColumn(blank.Property(p => p.Operator), " ") { ColumnWidth = 30, IsHyperlinkStyleColumn = true, HyperlinkActiveCursor = Cursors.Hand, formatter = v => ExpressionResolver.GetOperatorString((ExpressionOperator)v) }); fastGrid.Columns.Add(new FastColumn(blank.Property(p => p.Value), Localizer.GetString("TitleValue")) { IsEditable = true }); RebindData(); fastGrid.FieldValueChanged += delegate { UpdateExpression(); }; collapseButton.Click += (sender, args) => { if (CollapseButtonClicked != null) { CollapseButtonClicked(this, new EventArgs()); } }; refreshButton.Click += (sender, args) => { if (RefreshButtonClicked != null) { RefreshButtonClicked(this, new EventArgs()); } }; createPortfolioButton.Click += (sender, args) => { if (CreatePortfolioButtonClicked != null) { CreatePortfolioButtonClicked(this, new EventArgs()); } }; // secret button showExpressionLabelButton.Click += (sender, args) => { expressionLabel.Visible = !expressionLabel.Visible; }; }