Я создаю простое приложение win form с одной сеткой данных, одним TextBox.
У меня около 10К записей имен.
Что я хочу сделать, так это реализовать некую функцию автозаполнения, поэтому, когда пользователь вводит текстовое поле, сетка данных обновляется для отображения соответствий соответственно.
Просто чтобы проверить это, у меня есть один объект DataContext, который возвращает таблицу имен, и я поместил некоторый код в событие textBox1_TextChanged для сброса источника данных с помощью
this.dataGrid1.DataSource = (from p in connectionWrapper.getConnectionObj.PatientsNormalizeds
where p.Name.Contains(textBox1.Text)
select p).Take(30);
Это работает нормально по локальному соединению, но при извлечении данных с удаленного сервера SQL это, конечно, слишком медленно, набор текста становится медленным и неприемлемым для пользователей.
Просто интересно, можно ли что-нибудь сделать без изменения дизайна. Конечно, я могу загрузить всю таблицу в список или DataTable на form_loading и запустить поиск по ней, но это приведет к тому, что форма перестанет отвечать на 3 секунды или около того ...
Это, вероятно, очень просто для большинства разработчиков, но я очень новичок.
Спасибо!