Я создал:
private System.Windows.Forms.PictureBox [] RedBoxes;
Затем в form_load я делаю:
RedBoxes = new PictureBox[20];
for (int i = 0; i < 20; i++)
{
RedBoxes[i] = new PictureBox();
RedBoxes[i].Image = global::IDMTestClient.Properties.Resources.Red;
RedBoxes[i].Name = "RedBox" + i.ToString();
RedBoxes[i].Size = new Size(1, 38);
RedBoxes[i].Location = new Point(i + 10, 32);
RedBoxes[i].TabIndex = i + 2;
RedBoxes[i].TabStop = false;
groupBox3.Controls.Add(RedBoxes[i]);
RedBoxes[i].Visible = false;
RedBoxes[i].BringToFront();
}
Теперь, когда я пытаюсь получить доступ к RedBox в другой функции, он выдает:
"Первое случайное исключение типа 'System.InvalidOperationException' произошло в System.Windows.Forms.dll"
Например:
, когда я:
RedBoxes[i].Left = 10;
или
RedBoxes[i].Location = new Point(10, 32);
Что я делаю не так?
/ ------------------ ОБНОВЛЕНИЕ ------------------- /
base {System.SystemException} = {"Недопустимая операция между потоками: доступ к элементу управления groupBox3из потока, отличного от потока, в котором он был создан. "}
Это то, что есть в RedBoxes [i].Работа WinForms автоматически сгенерированных потоков?