Как улучшить производительность WinForms ComboBox при загрузке огромного набора данных? - PullRequest
0 голосов
/ 07 июля 2019

У меня есть DataGridView, который содержит несколько столбцов, одним из которых является DataGridViewComboBox.

ComboBox загружает данные (товары на складе) из таблицы данных, содержащей тысячи предметов.Пользователь не видит все элементы, так как для DropDownStyle установлено значение Simple, а пользователь будет видеть только элементы, соответствующие его / ее типам (автозаполнение).
Проблема заключается в том, что для отображения элементов требуется слишком много времени.из выпадающего списка.Любые предложения о том, как отображать элементы очень быстро?

Я пытался использовать BackgroundWorker в качестве функции многопоточности, но он работал с загрузкой данных, а не с их отображением.

private void backgroundWorker1_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
{
    DataGridViewComboBoxColumn c = new DataGridViewComboBoxColumn();
                c.Name = "Customer";
                c.ValueMember = "ID";
                c.DisplayMember = "Name";
                c.HeaderText = "Name";
                c.DataSource = GetItems(); // GetItems() returns datatable
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...