Bonjour, je souhaiterai réaliser un affichage rafraichi toutes les 100ms.
J'ai dans une classe l'ensemble du code d'affichage et dans l'autre les méthodes de traitements le tout s'articule ainsi

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
23
24
25
26
27
28
29
30
31
32
33
34
35
 
public partial class DiagnosticAffichage : UserControl
    {
        private System.Timers.Timer temps;
        private Diagnostic diagnostic;
 
        public DiagnosticAffichage()
        {
            InitializeComponent();
            diagnostic = new Diagnostic();
            TimerAction();
        }
 
        public void TimerAction()
        {
            temps = new System.Timers.Timer();
            temps.Interval = 200;
            temps.Elapsed += new ElapsedEventHandler(AppelAffichage);
            temps.Enabled = true;
            temps.Start();
        }
 
        public void AppelAffichage(object source, ElapsedEventArgs e)
        {
            Affichage();
        }
 
        public void Affichage()
        {
            this.ramLibre.Text = diagnostic.getMemoire();
            this.processeurPourcentage.Text = diagnostic.getProcesseur();
            this.disqueLibre.Text = diagnostic.getDisque();
            this.kbytesSec.Text = diagnostic.getReseau();
        }
    }
J'ai l'erreur suivante qui apparaît :

Opération inter-threads non valide : le contrôle 'ramLibre' a fait l'objet d'un accès à partir d'un thread autre que celui sur lequel il a été créé.
Je regarde mais j'ai du mal à trouver quelque chose de compréhensible pour savoir comment dans mon cas je dois géré cette communication inter-thread.
Merci d'avance.