title: Windows Forms method Form.ShowDialog() strange behaviour
body: <p>I was trying to show a form(<code>FormChild</code>), with some radio buttons in, just to select, close, and get the value of the selected radio button from the calling form(<code>FormParent</code>). On a click event handler for a Button in <code>FormParent</code>, I just did:</p>
  
  <pre><code>var formChild=newFormChild();
  formChild.ShowDialog(this);
  </code></pre>
  
  <p>All was working great until I decided to handle the CheckedChanged event of one of the RadioButtons inside FormChild:</p>
  
  <pre><code>private void SomeRadioButton_CheckedChanged(object sender, EventArgs e)
  {
      Close();
  }
  </code></pre>
  
  <p>Now the <code>formChild.ShowDialog(this);</code> did not showed formChild and formChild immediately returns <code>DialogResult.Cancel</code>.</p>
  
  <p>Any explanation on this?</p>
  
  <p>Thanks in advance</p>