Focus events not always firing for ActiveX control in VB.Net

I am using a VB6 ActiveX control in a VB.Net windows form. The control doesn't seem to get focus properly. When I tab to the control, the Enter event and subsequently the Leave event fires as expected. However, if I click on the control, the Enter event doesn't usually fire and thus the Leave event never fires. There is code that needs to get executed to validate the user input when the control looses focus. However, this code doesn't seem to get consistency executed unless I tab through the control.
The code is supposed to automatically get executed in the host ExitFocus event of the VB6 user control, but that isn't working. So, I tried to call a public method in the ActiveX control from the Leave event back in VB.Net, but that isn't working either since the Leave event doesn't always fire. Ideally, I wouldn't need to place any code in the Leave event, since the ExitFocus event for the user control contains all of the necessary code.
The ActiveX control consists of a label, textbox, a button, and a popup form. The user enters information into the textbox, which is suppose to get validated in the UserControl_ExitFocus event.
I have researched migrating this control from VB6 to .Net, but it will require some significant rework. As a result, I would like to get the control working properly through the interop layer. The control works fine when hosted in a VB6 environment. Does anyone have any ideas about how to make it work correctly within VB.Net?

Thanks

Gary

[1506 byte] By [codefund.com] at [2007-12-16]