Я пытаюсь реализовать функцию поиска / фильтрации с помощью TextBox.TextBox должен искать мой ListBox, который заполняется данными из базы данных SQL.
Это то, что я в настоящее время пробовал.
private void Search_TextChanged(object sender, TextChangedEventArgs e)
{
GetAreas();
}
private void GetAreas()
{
using (SqlConnection sqlCon = new SqlConnection(connectionString))
{
sqlCon.Open();
string query_search = "SELECT * FROM tblAllPostCodes WHERE (Town LIKE @Town)";
SqlCommand com = new SqlCommand(query_search, sqlCon);
com.Parameters.AddWithValue("@Town", "%" + Search.Text + "%");
using (SqlDataAdapter adapter = new SqlDataAdapter(com))
{
DataTable dt = new DataTable();
adapter.Fill(dt);
Area.ItemsSource = dt.DefaultView;
}
sqlCon.Close();
}
}
Вот как получить элементы списка ListBox для отображения
public void AreaList()
{
DataTable dt = new DataTable();
SqlDataAdapter adpt = new SqlDataAdapter("SELECT DISTINCT Town from tblAllPostCodes", sqlCon);
adpt.Fill(dt);
foreach (DataRow dr in dt.Rows)
{
Area.Items.Add(dr["Town"].ToString());
}
}
Я пытался очистить элементы, но они заканчиваютсядо очистки при поиске и не заполняется соответствующим текстом.
Буду признателен за любую помощь. Я уже некоторое время работаю над этим.