title: Add "Contains" filter to existing list of filters in datagridview
body: <p>I am currently allowing the user to filter through values of a datagridview, by letting them choose the column name, operand, and value.</p>
  
  <p>Column name, operand and value get saved to a ColumnFilter instance. The user is also able to set more than one filters to the grid. My actual filtering works like so:</p>
  
  <pre><code>public void ApplyFilters(List&lt;ColumnFilter&gt; filters)
      {
          BindingSource bs = (BindingSource)dataGridView1.DataSource;
          bs.Filter  = string.Join(" AND ", filters.Select(filter=&gt;string.Format("{0} {1} '{2}'", filter.ColumnName, filter.Operand, filter.Value)).ToArray());
          dataGridView1.DataSource = bs;
      }
  </code></pre>
  
  <p>This works fine for as many filters as you might want to apply. My current list of available operands is : {=, >, &lt;, >=,&lt;=,&lt;>}. Now however I would like to add one more operand, the Contains. So if someone wants to search through a string column, they can do it through this operand. </p>
  
  <p>One simple way to filter for the Contains is:</p>
  
  <pre><code>var dt = (DataTable)dataGridView1.DataSource;
          dt.DefaultView.RowFilter = string.Format("Column like '%{0}%'", txtBoxSearch.Text.Trim().Replace("'", "''"));
          dataGridView1.DataSource = dt;
  </code></pre>
  
  <p>This is just an example. How can I make my ApplyFilters function generic enough to cater for the Contains operand?</p>