[C#] Multithreads und Forms

Magic1416

Lieutenant
Registriert
Dez. 2003
Beiträge
533
Hallo,
ich möchte eine Multithread Anwendung schreiben. Als Beispiel soll eine Maschine gestartet werden.

Code:
class Engine1 
    {
        public void StartEngine()
        {
            
            //Hier soll irgendwie der Code hin der die Textbox aktualisiert. ZB. Maschine   
           //wird gestartet 
            
           System.Threading.Thread.Sleep (7000);
            
           //Hier soll irgendwie der Code hin der die Textbox aktualisiert. ZB. Maschine   
           //wurde gestartet  
            
        }
        public void StopEngine()
        {

        }
     
        
    }

Das Form hat einen Button und eine Textbox auf der das Ergebnis angezeigt wird.

Code:
public partial class Form1 : Form
    {
                
        Thread t1;
       
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
           
                
               t1 = new Thread(new ThreadStart (engineStart1));
               t1.Start();
            
        }

        private void engineStart1() 
        {
            Engine1 eng = new Engine1 ();
            eng.StartEngine();
            
            
        }
        
    }



Was muss ich machen, damit ich aus der Klasse Engine1 heraus die Textbox1 aus dem gestarteten Thread heraus aktualisieren kann.

Danke Gruß Magic
 
Um von einem anderen Thread aus auf ein GUI-Element zuzugreifen musst du Invoke() verwenden, Beispiele gibt's z.B. hier oder hier.
 
Zurück
Oben