allora.. premetto che non conosco questo metodo di programmazione e se fossi in te il metodo esegui lo metterei in un thread e nel thread principale (dopo lo show per intenderci) metterei un threadEsegui.Join() per attendere la sua conclusione..