Problème lors de lancement d'une fonction

djfabdel59 Messages postés 1 Date d'inscription vendredi 18 mars 2005 Statut Membre Dernière intervention 12 mai 2010 - 12 mai 2010 à 16:02
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 - 12 mai 2010 à 16:32
Bonjour,
voila je débute en c# et suis confronté à une problématique.

J'essai d'afficher un message dans un label "please wait", de faire un timer qui quand il sera fini remplacera le texte de ce label par "it's OK".

le problème c'est qu' apparemment je ne peut modifier ce label via une fonction.

Avez vous une idée?
MERCI

namespace SUP3
{
public partial class Form1 : Form
{
private static System.Timers.Timer aTimer;
delegate void SetTextCallback(string text);

public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
label1.Text = "wait please ...";
//System.Timers.Timer myTimer = new System.Timers.Timer();
//myTimer.Interval = 100;
//myTimer.AutoReset = false;
//myTimer.Start();
//myTimer.Elapsed += new ElapsedEventHandler(fonction);
aTimer = new System.Timers.Timer(1000);
//aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
aTimer.Elapsed += new ElapsedEventHandler(fonction);

// Set the Interval to 2 seconds (2000 milliseconds).
aTimer.Interval = 2000;
//aTimer.AutoReset = false;
aTimer.Enabled = true;
}

private static void fonction(object source, ElapsedEventArgs e)
{
label1.text = "its OK" ;
}
}
}

1 réponse

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
12 mai 2010 à 16:32
en Windows Forms tu peux faire ça facilement avec les BackgroundWorker...



Sébastien FERRAND
Lead Developpeur
Microsoft Visual C# MVP 2005 - 2009
Blog Photo
0
Rejoignez-nous