void AddItems(TextColumnFilterDialog dialog, Table table, int col) { string[] toAdd = GetDistinctItems(table, col); foreach (string item in toAdd) { dialog.AddItem(item, ItemIsChecked(item)); } }
TextColumnFilterDialog CreateFilterDialog(HeaderMouseEventArgs e) { var dialog = new TextColumnFilterDialog(); Point screenPos = e.Table.PointToScreen(new Point(e.HeaderRect.Left, e.HeaderRect.Bottom)); dialog.StartPosition = FormStartPosition.Manual; dialog.Location = screenPos; return(dialog); }
void UpdateFilter(HeaderMouseEventArgs e, TextColumnFilterDialog dialog) { if (dialog.AnyUncheckedItems()) { SetFilterItems(dialog.GetCheckedItems()); } else { SetFilterItems(null); // The user has ticked every item - so no filtering is needed } e.Table.OnHeaderFilterChanged(e); }
/// <summary> /// Called when the filter button is clicked on this column /// </summary> /// <param name="e"></param> public void OnHeaderFilterClick(HeaderMouseEventArgs e) { TextColumnFilterDialog dialog = CreateFilterDialog(e); AddItems(dialog, e.Table, e.Index); DialogResult result = dialog.ShowDialog(); if (result == DialogResult.Cancel) { return; } UpdateFilter(e, dialog); }
void UpdateFilter(HeaderMouseEventArgs e, TextColumnFilterDialog dialog) { if (dialog.AnyUncheckedItems()) SetFilterItems(dialog.GetCheckedItems()); else SetFilterItems(null); // The user has ticked every item - so no filtering is needed e.Table.OnHeaderFilterChanged(e); }
TextColumnFilterDialog CreateFilterDialog(HeaderMouseEventArgs e) { var dialog = new TextColumnFilterDialog(); Point screenPos = e.Table.PointToScreen(new Point(e.HeaderRect.Left, e.HeaderRect.Bottom)); dialog.StartPosition = FormStartPosition.Manual; dialog.Location = screenPos; return dialog; }