/// <summary> /// Adds a single ReportFilterItem to the control /// </summary> protected internal void AddItem() { ReportFilterItem rfi = new ReportFilterItem(); flop_Filters.Controls.Add(rfi); if (filteritems.Count > 0) { filteritems[filteritems.Count - 1].btn_Add.Visible = false; } filteritems.Add(rfi); ConfigReportFilterItem(rfi); }
/// <summary> /// Removes a single ReportFilterItem from the control /// </summary> /// <param name="_rfi">The ReportFilterItem to remove</param> protected internal void RemoveItem(ReportFilterItem _rfi) { flop_Filters.Controls.Remove(_rfi); filteritems.Remove(_rfi); if (filteritems.Count == 0) { llb_AddFilter.Visible = true; } else { filteritems[filteritems.Count - 1].btn_Add.Visible = true; } }
/// <summary> /// Configures the report filter item. /// </summary> /// <remarks>Binds the control's DataSource to a copy of the BindingList and set the associated attributes.</remarks> /// <param name="_rfi">The ReportFilterItem to configure</param> private void ConfigReportFilterItem(ReportFilterItem _rfi) { _rfi.cb_FilterBy.DisplayMember = "Key"; _rfi.cb_FilterBy.ValueMember = "Value"; _rfi.cb_FilterBy.DataSource = new BindingList <KeyValuePair <string, string> >(bs_FilterSource); }