title: Can't click on other form when new forms appears C#
body: <p>I'm making an ATM simulator and I am currently trying to have a button on one form to create another form (the ATM). I've been able to do this but only for one form as when the new form appears I am unable to click on the other form which has the "add atm" button.  I've tried <code>Form.Show</code>, <code>Form.ShowDialog</code> and <code>Applications.Run()</code> using C#.</p>
  
  <p>here is the code:</p>
  
  <pre><code>public class Program
      {
          private Account[] ac = new Account[3];
          private ATM atm;
          public Form1 form1;
  
           /* This function initilises the 3 accounts 
           * and instanciates the ATM class passing a referance to the account information
  
           */
          public Program()
          {
  
              ac[0] = new Account(300, 1111, 111111);
              ac[1] = new Account(750, 2222, 222222);
              ac[2] = new Account(3000, 3333, 333333);
  
              Thread form1thread = new Thread(new ThreadStart(startform)); //Creates ATM Form
              //Thread atm2 = new Thread(new ThreadStart(start));
  
              form1thread.Start();
              //atm2.Start();
          }
  
  
          static void Main(string[] args)
          {
              new Program();
          }
  
          public void startform()
          {
              form1 = new Form1(this);
              form1.ShowDialog();
          }
  
          public void newatm()
          {
              atm = new ATM(ac);
              atm.ShowDialog();
          }
  
          public void makethread()
          {
              Thread newatm = new Thread(new ThreadStart(startform));
              newatm.Start();
          }
      }
  </code></pre>
  
  <p>and in form1:</p>
  
  <pre><code>public partial class Form1 : Form
  {
      Program program;
  
      public Form1(Program program)
      {
          InitializeComponent();
          this.program = program;
      }
  
      private void Form1_Load(object sender, EventArgs e)
      {
          this.ShowDialog();
      }
      private void button1_Click(object sender, EventArgs e)
      {
  
          program.newatm();
      }
  }
  </code></pre>