The idea is that the problem is on the MS Access side. iGrid uses the standard way of raising COM events which works ok in other development environments, and most likely Access connects its VBA event handlers to an ActiveX after the form's initialization operations including the Open event.
There is another form initialization event, Load, and it is triggered after the Open event. Can you move your code that populates iGrid into the Load event and tell us whether it works for you?