title: Form Control getting disposed automatically shortly after form being created
body: <p>I have this weird and inconsistent issue.</p>
  
  <p>The application is built in compact framework 3.5 running on a windows mobile 6.5 device.</p>
  
  <p>The screen flow of the application is somewhat like this.</p>
  
  <p>MainScreen (which is always running)
  Screen1
  Screen2
  Screen3</p>
  
  <p>MainsScreen  -> Screen1 -> Screen2 -> Screen3 -> MainScreen </p>
  
  <p>When the loop is completed and the application lands back on MainScreen, MainScreen.Activated() is called and on a condition launches automatically Screen1.
  The code looks something like this:</p>
  
  <pre><code>        private void MainScreen_Activated(object sender, EventArgs e)
      {
          if (Condition)
          {
              NextScreen();
  
              return;
          }
  
              //other code here
  
      }
      private void NextScreen()
      {
  
          Screen1 formScreen1 = new Screen1 ();
          formScreen1 .Show();
      }
  </code></pre>
  
  <p>Screen1 has also this piece of code in the load of the form:</p>
  
  <pre><code> private void Screen1_Load(object sender, System.EventArgs e)
  {
          if(Condition)
          {
               NextScreen();
          }
  }
   private void NextScreen()
      {
  
          Screen2 formScreen2=  new Screen2();
          formScreen2.Show();
  
          Close();
      }
  </code></pre>
  
  <p>So when this condition in Screen1_Load is fulfilled the application automatically launches Screen2 and closes this.</p>
  
  <p>In this particular case it happens that sometimes a control on Screen2 gets disposed after the form is created. I know this because i can actually see the control for a split second on the screen.</p>
  
  <p>The issue is also inconsistent, it won't happen all the time in the exact scenario which makes me believe it's got to something with bad timing.
  The control that gets disposed seems to be also chosen at random, most of the times it's the same button but there were cases when a listbox from the form got disposed.</p>
  
  <p>Please note that there is no code in the application that will call dispose of the control.</p>
  
  <p>Any help is greatly appreciated. Thank you, hope i explained the issue well enough.</p>