title: Why does the LostFocus event get called at different times?
body: <p>In reference to <a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.control.lostfocus%28v=vs.110%29.aspx">this MSDN page</a> (or any related page on the matter), it states that:</p>
  
  <blockquote>
    <p>When you change the focus by using the keyboard, focus events occur in
    the following order:</p>
    
    <ol>
    <li>Enter</li>
    <li>GotFocus</li>
    <li>Leave</li>
    <li>Validating</li>
    <li>Validated</li>
    <li><strong>LostFocus</strong></li>
    </ol>
  </blockquote>
  
  <p>However, when you use the mouse to raise events, the order changes!</p>
  
  <blockquote>
    <p>When you change the focus by using the mouse or by calling the Focus method, focus events occur in the following order:</p>
    
    <ol>
    <li>Enter</li>
    <li>GotFocus</li>
    <li><strong>LostFocus</strong></li>
    <li>Leave</li>
    <li>Validating</li>
    <li>Validated</li>
    </ol>
  </blockquote>
  
  <p>Wouldn't this make the chain of events completely different? My interpretation here is that the keyboard chain ensures everything is in working order, then raises the <code>LostFocus</code> event. Yet, the mouse events seem to raise it before validating for some reason. Why is that?</p>