Обязательно ли нужен InvokeRequired? - C#
Формулировка задачи:
Добрый день!
Если задача - поменять значение формы из другого треда, то обычно использовал:
Так вот. Если мне нужно разом отредактировать много форм, то можно ли использовать вот такую конструкцию:
?
То есть, я один раз вызываю BeginInvoke, а внутри скобок редактирую несколько форм.
if (this.InvokeRequired)
this.Invoke((MethodInvoker)delegate { this.Text = text; });
else
this.Text = text; BeginInvoke((MethodInvoker)delegate
{
this.Text = text;
dataGridView1.Columns[0].Visible = false;
...
...
});Решение задачи: «Обязательно ли нужен InvokeRequired?»
textual
Листинг программы
void SafeCall(Action action)
{
if (InvokeRequired)
BeginInvoke(action);
else
action();
}