title: Control.PerformClick() isn't doing anything, what am I missing?
body: <p>I've reviewed the MSDN doc and a couple SO answers, and all signs point to this working.  At this point, I think I've either completely misunderstood what to expect or I've missed one line of code I need.</p>
  
  <p>In short, I've got a WinForms app with a button, and I want another function to "click" that button at one point in the code.  Here's the relevant bits:</p>
  
  <p>// form.Designer.cs</p>
  
  <pre><code>this.btnAddBranch.Click += new System.EventHandler(this.btn_add_Click);
  </code></pre>
  
  <p>// form.cs</p>
  
  <pre><code>// using statements
  public partial class EditClient : Form
  {
     // ...
     public TestClick()
     {
        //btnAddBranch.PerformClick(); &lt;-- would like to know why this fails ...
        btn_add_Click(this, EventArgs.Empty);
     }
     private void btn_add_Click(object sender, EventArgs e)
     {
        MessageBox.Show("You clicked it!");
     }
   }
  </code></pre>
  
  <p>The commented line for <code>btnAddBranch.PerformClick()</code> is what I was hoping would do the equivalent of the line below it.  But it doesn't, it doesn't seem to do anything when <code>TestClick()</code> is called.  If I do the uncommented line, it works fine.</p>
  
  <p>Am I missing something, or am I totally misunderstanding something?</p>