It seems that using Like requires some exact formatting, which I am not aware of. This is the code:
private void DoFilter()
{
using (connection = new SqlConnection(connectionString))
using (SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM Customers WHERE CompanyName = @filter + '%'", connection))
{
adapter.SelectCommand.Parameters.AddWithValue("@filter", txtFilter.Text.Trim());
DataTable TCustomers = new DataTable();
adapter.Fill(TCustomers);
lstCustomers.DisplayMember = "CompanyName";
lstCustomers.ValueMember = "Id";
lstCustomers.DataSource = TCustomers;
}
}
The code does not raise any error. It just leaves the ListBox (lstCustomers) empty. (txtFilter is a TextBox, in which the filter string is).
use like operator
instead of =
SELECT * FROM Customers WHERE CompanyName like @filter + '%'"