DEV Community 👩‍💻👨‍💻

1001binary
1001binary

Posted on

Update UI state from an another Thread in Windows Forms

An exception is thrown when trying to update control state from an another Thread.

Thread newThread = new Thread(new ThreadDelegate(() => {
   txtStatus.Text = "Started";
}));

newThread.Start();
Enter fullscreen mode Exit fullscreen mode

Solution

We use BeginInvoke to update UI state asynchronously.

Thread newThread = new Thread(new ThreadDelegate(() => {
   txtStatus.BeginInvoke(() =>
   {
       txtStatus.Text = "Started";
   });
}));

newThread.Start();
Enter fullscreen mode Exit fullscreen mode

Happy coding!

Top comments (0)

🌚 Browsing with dark mode makes you a better developer.

It's a scientific fact.