Запуск метода в отдельном потоке - C#
Формулировка задачи:
Доброго времени суток!
На форме есть textBox1 и кнопка.
При нажатии на кнопку, создаётся новый поток:
Метод, запускаемый в отдельном потоке должен записывать в текстбокс определённый текст.
Но при нажатии выскакивает ошибка:
Необработанное исключение типа "System.InvalidOperationException" в System.Windows.Forms.dll
Дополнительные сведения: Недопустимая операция в нескольких потоках: попытка доступа к элементу управления 'IP2' не из того потока, в котором он был создан.
Подскажите, как переделать код, чтобы работало..
private void button1_Click(object sender, EventArgs e)
{
(new System.Threading.Thread(delegate()
{
GetCurrentIP(IP2);
})).Start();
}Решение задачи: «Запуск метода в отдельном потоке»
textual
Листинг программы
private void button1_Click(object sender, EventArgs e)
{
new Thread(() => GetCurrentIP()).Start();
}
private void GetCurrentIP()
{
if (textBox1.InvokeRequired)
textBox1.Invoke(new Action(UpdateTextBox));
else
UpdateTextBox();
}
private void UpdateTextBox()
{
textBox1.Text += "Строка";
}