Did you tried to debug this problem?
Under VS debugger you can click Break All button when grid is freezes to look at place of current execution.
Also: Probably you've forgotten to finish some started FlyGrid.BeginInit() procedure by FlyGrid.EndInit()
Inspect your code for the FlyGrid.BeginInit and try to use following code construction:
[c#]
flyGrid.BeginInit()
try
{
//here is your initialization code
}
finally
{
flyGrid.EndInit();
}
[VB.Net]
flyGrid.BeginInit()
Try
'here is your initialization code
Finally
flyGrid.EndInit()
End Try