/// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="table">The <see cref="Table{TItem}"/> to filter.</param>
        /// <param name="filterParams">The filter parameters.</param>
        public FilteredItemCollection(ITable <TItem> table, TableFilterParams filterParams)
            : base(table.Items)
        {
            _baseCollection = table.Items;
            _columns        = table.Columns;
            _filterParams   = filterParams;

            _filteredList = _filterParams.Column == null
                                                                ? GetFilteredItemCollection(AnyColumnMatch)
                                                                : GetFilteredItemCollection(SingleColumnMatch);

            _baseCollection.ItemsChanged += BaseItemsChanged;
        }
Exemplo n.º 2
0
 /// <summary>
 /// Filters this table according to the specified filter parameters.
 /// </summary>
 public void Filter(TableFilterParams filterParams)
 {
     _filterParams = filterParams;
     Filter();
 }
Exemplo n.º 3
0
        private void _filterText_TextChanged(object sender, EventArgs e)
        {
            if (_table == null)
                return;


            if (String.IsNullOrEmpty(_filterTextBox.Text))
            {
                _filterTextBox.ToolTipText = SR.MessageEmptyFilter;
                _clearFilterButton.Enabled = false;
                _table.RemoveFilter();
            }
            else
            {
                _filterTextBox.ToolTipText = String.Format(SR.MessageFilterBy, _filterTextBox.Text);
                _clearFilterButton.Enabled = true;
                var filterParams = new TableFilterParams(null, _filterTextBox.Text);
                _table.Filter(filterParams);
            }

            // Refresh the current table
            this.Table = _table;
        }