Попытался заполнить dataGridView через Parallel.For(){} но столкнулся со следующей ошибкой:
Дополнительные сведения: Недопустимая операция в нескольких потоках: попытка доступа к элементу управления 'dataGridView1' не из того потока, в котором он был создан.
Заполняю следующим образом:
dataGridView1.Rows.Clear();
dataGridView1.Columns.Clear();
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvRegNum", HeaderText = "Рег. №", Width = 70 });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvRegDate", HeaderText = "Рег. Дата", Width = 80 });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvThemes", HeaderText = "Краткое содержание", Width = 400 });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvListDoc", HeaderText = "Документ", Width = 90 });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvListAdd", HeaderText = "Приложение", Width = 110 });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvTypeSend", HeaderText = "Вид отправления", Width = 150 });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvSendDate", HeaderText = "Дата отправления", Width = 100 });
dataGridView1.Columns.Add(new DataGridViewTextBoxColumn() { Name = "dgvUID", HeaderText = "УИД", Width = 50 });
Parallel.For(0, LetterList.Count, i =>//for (int i = 0; i < LetterList.Count; i++)
{
dataGridView1.Rows.Add(LetterList[i].Регистрационный_номер, LetterList[i].Регистрационная_дата.Substring(0, 10), LetterList[i].Краткое_содержание, LetterList[i].Количество_листов_документа, LetterList[i].Количество_листов_приложения, LetterList[i].Вид_отправления.Наименование, LetterList[i].Дата_отправки.Substring(0, 10), LetterList[i].ИД);
});
Как выйти из положения?