Я прочитал несколько примеров использования объектов BackgroundWorker для обработки выполнения трудоемких задач, которые генерируют результаты, которые используются для заполнения DataGridView. Однако в моем случае кажется, что заполнение DataGridView занимает больше всего времени. Мне интересно, если это потому, что мне нужно отформатировать результаты (скрыть определенные столбцы, проверить определенные флаги в каждой строке, чтобы установить цвет / шрифт и т.
Пример:
DataTable results_table;
DataGridView my_grid;
DataView my_view;
private void fillTable()
{
// Generate the results
...
// Bind the data.
my_view.Table = results_table;
my_grid.DataSource = my_view
// Format the results
my_grid.Columns[0].Visible = false;
my_grid.Columns[1].Visible = false;
my_grid.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
my_grid.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
foreach (DataGridViewRow row in my_grid.Rows)
{
// Check for flags and format necessary rows.
}
}
Это правильный способ сделать это, или есть какой-то другой способ форматирования результатов без необходимости перебирать каждую строку?