Put a small TextBox with the same color as the backgorund somewhere on the form and make it Enabled, Locked and TabIndex=0. Call it RIP. When the form opens the cursor will go to RIP and sit there doing no harm when users but their elbow on their keybord. If for any reason you need to move a focus off a control, use code: Me.RIP.SetFocus.
I had a similar problem.... I wanted to hide a calendar (made visible by the click of a button) but couldn't use the LostFocus event to make it invisible since the calendar still has focus during the event. Unfortunately, if the user clicked on any number of other controls, the calendar would remain open. I didn't want to create an event on every control to make the calendar invisible.
Here's my workaround in a nutshell:
OnClick (of button that opens calendar): Calendar.Tag = "F"
OnLostFocus (of Calendar): Calendar.Tag = "N"
OnTimer (of Form): If Calendar.Tag = "N" AND Calendar.Visible = True then Calendar.Visible = False.
I set the Calendar.Tag to "F" in the beginning in case the calendar needed to be opened more than just once, otherwise, it would still be set to N and would close while still in use.