Wrong idea. Threads are not related to Forms and Controls. You can run different threads each updating the same and different controls. Let's see.
First, how to run threads and work with UI.
You cannot call anything related to UI from non-UI thread. Instead, you need to use the method
Invoke
or
BeginInvoke
of
System.Windows.Threading.Dispatcher
(for both Forms or WPF) or
System.Windows.Forms.Control
(Forms only).
You will find detailed explanation of how it works and code samples in my past answers:
Control.Invoke() vs. Control.BeginInvoke()[
^],
Problem with Treeview Scanner And MD5[
^].
See also more references on threading:
How to get a keydown event to operate on a different thread in vb.net[
^],
Control events not firing after enable disable + multithreading[
^].
Now, I doubt you really need MDI. You don't want it, really. This style is highly discouraged by everyone, and Microsoft, first of all. Implementation using MDI is more difficult, and you don't want to scare off your users with immense inconvenience of it.
Please see:
http://en.wikipedia.org/wiki/Multiple_document_interface#Disadvantages[
^],
Question on using MDI windows in WPF[
^],
MDIContainer giving error[
^].
In my past solutions referenced above I also suggest what to do instead.
—SA