title: How to not confuse the mouse click and mouse down event in windows forms?
body: <p>I have a MenuStrip from which I want to drag some things on the form body(then some things happen such as the backcolor of the form is changing, etc). I am handling the MouseDown event, but the thing is that when I click on the option in the <code>ToolStripMenu</code> the same things happen(the backcolor of the form is changing, etc).
  What I want is to somehow separate the <code>MouseClick</code> from the <code>MouseDown</code>. More precisely, when I click on one option of the <code>MenuStrip</code> I don't want anything to happen. </p>
  
  <p>When I click, the <code>MouseDown</code> event fires. I want to ignore it unless the mouse's cursor moves.</p>
  
  <pre><code>private void salmonToolStripMenuItem_MouseDown(object sender, MouseEventArgs e)
  {
      //gets the cursor position at the moment when mouse down is activated
      p1M = Cursor.Position.X;
      p2M = Cursor.Position.Y;
      //miscare shows if the mouse moved
      if (miscare == true)
      {
          //do things 
      }
  }
  
  private void Rezervare1_DragEnter(object sender, DragEventArgs e)
  {
      e.Effect = DragDropEffects.Copy;
  }
  
  private void salmonToolStripMenuItem_MouseUp(object sender, MouseEventArgs e)
  {    
      //gets the cursor position to see if it moved
      p1m = Cursor.Position.X;
      p2m = Cursor.Position.Y;
      if (p1M != p1m || p2M != p2m)
      {
          miscare = true;//it means the cursor moved
      }
      else miscare = false;
  }
  </code></pre>