I did like some advices on this little project i am trying to do so i will start explainning a little what it is.

What i am planning to do is a 2 windows application where the first window will hold configurations, database edition, etc... and the second window will display the information of something when you have your mouse over it.

So right now what i am trying to do is something really basic... First something i am not sure about is how should i create this second window.

Should i just create the new form in the public autox function and then reuse it on the thread process or should i create it inside the thread ? but then again if i create it inside the thread how should i manage it ?

Here is a little sample of my main window, it has no content but the checkbox that begins false and changes to true once u check it.

then you can see that i am defining and calling my thread and it is function which what i wanted to do with that function basicly is if the checkBox is check the window will be display if it is uncheck it will hide.

But since on the future i will have data being updated in there and that data will be called after reading another process i tought that it did be better having it on a thread so i could still do or manage other stuffs within the application.
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;

namespace AutoX
{
    public partial class AutoX : Form
    {
        bool run = true;
        Thread WindowShowHide;

        public AutoX()
        {
            InitializeComponent();

            WindowShowHide = new Thread(new ThreadStart(WindowInfo));
            WindowShowHide.Start();
        }

        public void WindowInfo()
        {
            while (run == true)
            {
                if (iOnMouseBox.ThreeState == false)
                {
                    ShowItem.Show();
                }
                else
                {
                    ShowItem.Hide();
                }
            }
        }
    }
}
Here is my second window which at the momment has no content... i just want to be able to do what i said above
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace AutoX
{
    public partial class ShowItem : Form
    {
        public ShowItem()
        {
            InitializeComponent();
        }
    }
}
looking forward to any tips, advices etc ...

Even if i am doing something wrong if you can atleast point me on the right direction it would be awesome.

Thanks in advance.

PS if u need any additional code please let me know and i will post here.