I found that the issue is not the ActiveX event, but where is the event fired from in the ActiveX control. I have a worker thread that calls the parent thread's method to fire the event. If I move the firing of the event outside of this worker thread, I have no problems getting handling the event.