Как искать datagridview (данные хранимой процедуры) с помощью текстового поля
В моем приложении Windows у меня есть элемент управления Datagridview и Textbox. Я использую хранимую процедуру для отображения некоторых данных в datagridview. Проблема в том, что когда я попытался выполнить поиск в своем datagridview, ничего не происходит, а также он так запаздывает при вводе в текстовое поле, и я обнаруживаю это
CustomersList.DataSource = dt;
являться причиной. Я довольно новичок в использовании хранимых процедур. Я надеюсь, что кто-нибудь сможет мне помочь.
Что я уже пробовал:
Datatable dt; private void txt_usersearch_TextChanged(object sender, EventArgs e) { using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["SalesInventoryManagement.Properties.Settings.Setting"].ConnectionString)) { using (var cmd = new SqlCommand("usp_GetCustomers", con)) { cmd.CommandType = CommandType.StoredProcedure; dt.DefaultView.RowFilter = "Full_Name LIKE '%{txt_usersearch.Text}%'"; CustomersList.DataSource = dt; } } } and this code is to display my data to datagridview public class Display { public static void Display_Customer(DataTable dt, DataGridView dgv) { using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["SalesInventoryManagement.Properties.Settings.Setting"].ConnectionString)) { using (var cmd = new SqlCommand("usp_GetCustomers", con)) { con.Open(); cmd.CommandType = CommandType.StoredProcedure; using (var sda = new SqlDataAdapter(cmd)) { dt = new DataTable(); sda.Fill(dt); dgv.DataSource = dt; } con.Close(); } } } } Form load private void ManageCustomer_Load(object sender, EventArgs e) { Display.Display_Customer(dt, CustomersList); }
F-ES Sitecore
Выполните фильтрацию в вашем SP. Передайте текст своим usp_GetCustomers в качестве параметра и попросите их сделать "где". Или создайте новый "usp_SearchCustomers", чтобы сделать это.