bonjour tout le monde,
je veux bien appeler une méthode après 1seconde de l'affichage du form,et non pas dans le lancement avec form_load(). comment faire?
merci de m'aider.
bonjour tout le monde,
je veux bien appeler une méthode après 1seconde de l'affichage du form,et non pas dans le lancement avec form_load(). comment faire?
merci de m'aider.
ben tu as mis la réponse dans le titre... utilise un timer !
Autre approche, en utilisant un autre thread :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 // pour vérifier si c'est le premier affichage bool _shown = false; // se produit quand la form est affichée protected override void OnShown(EventArgs e) { if (!_shown) { Timer tmr = new Timer(); tmr.Interval = 1000; tmr.Tick += tmr_Tick; tmr.Start(); _shown = true; } } private void tmr_Tick(object sender, EventArgs e) { Timer tmr = sender as Timer; tmr.Stop(); LaMethodeAExecuter(); }
Note l'utilisation de Invoke pour que LaMethodeAExecuter s'exécute sur le thread de l'interface graphique
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 // pour vérifier si c'est le premier affichage bool _shown = false; // se produit quand la form est affichée protected override void OnShown(EventArgs e) { if (!_shown) { WaitCallback action = (state) => { Thread.Sleep(1000); this.Invoke(new MethodInvoker(LaMethodeAExecuter)); }; ThreadPool.QueueUserWorkItem(action); _shown = true; } }
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Partager