Ошибка операции с несколькими потоками, когда я получаю строку из другой задачи [дубликата]

На этот вопрос уже есть ответ здесь:

Недопустимая операция между потоками: доступ к элементу управления из потока, отличного от потока, в котором он был создан 20 ответов

В своем коде я разрабатываю графический интерфейс, который справляется с одной задачей. Из класса Form1 я отправляю параметры методу другому классу при другой задаче и получаю параметры из задачи.

В классе Form1 у меня естьmyEvt_valueChnaged(string s) метод, который получает строкуs в качестве аргумента - строка, содержащая текст текстового поля, которое отправляется из события в классе менеджера - вызывается из другой задачи.

Полученной строкой я обновляю текстовое поле в графическом интерфейсе, как написано здесь:

private void myEvt_valueChnaged(string s)
{
    textBox1.Text = s;
}

с этим кодом я получаю ошибку:

invalidoperationexception was unhandled by user code - Cross-thread operation not valid: Control 'textBox1' accessed from a thread other than the thread it was created on.

Я попытался добавить строку в методе:var y =s; and then textBox1.Text=y; но это не решило это.

Как я могу решить эту проблему?

Ответы на вопрос(1)

Ваш ответ на вопрос