Meu evento Timer falha porque os eventos são chamados em um segmento diferente
Eu recebo o erro "Operação de encadeamento cruzado inválida: Controle 'label1' acessado de um encadeamento diferente do encadeamento em que foi criado." quando eu corro este código:
using System;
using System.ComponentModel;
using System.Data;
using System.Text;
using System.Windows.Forms;
using System.Timers;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
System.Timers.Timer T = new System.Timers.Timer();
public Form1()
{
InitializeComponent();
T.Elapsed += new ElapsedEventHandler(T_Elapsed);
T.Start();
}
void T_Elapsed(object sender, ElapsedEventArgs e)
{
label1.Text = "This will not work";
}
}
}
Achei que os eventos foram executados no mesmo segmento em que foram acionados.