зависает UI при работе с dataGridView
От: zoom-zoom  
Дата: 26.01.15 15:00
Оценка: :)))
День добрый!

Зависает UI, когда обновляю dataGridView:

                while (true)
                {
                        bf = Array.order_dct.Values.ToList();
                        if (this.InvokeRequired)
                           Invoke(new Action(
                                () =>
                                {
                                    dataOrderBindingSource.DataSource = bf;
                                    dataOrderBindingSource.ResetBindings(false);
                                }));
                        else
                        {
                            dataOrderBindingSource.DataSource = bf;
                            dataOrderBindingSource.ResetBindings(false);
                        }
        }


Перепробовал и построчно обновлять и сразу всю BindingSource.DataSource — пока не нашел нормального варианта, чтобы все летало.
Зависает на строке dataOrderBindingSource.DataSource = bf примерно на 1-2 сек, вешая все UI. Причина зависания ясна, но как сделать иначе, пока не знаю.
Присвоение dataOrderBindingSource.DataSource = bf где-то заранее не получается, на экране тогда пустой список в dataGridView.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.