>The pageframe has only 3 pages and the control which is to receive first focus is on the first page (pageframe.pages(1)).
SetFocus to an object on the page does an implicit .Activate on the page (unless the page is already active) - now do you have any code there?
I think the best location for .FirstControl.SetFocus() is right there, on Page1.activate. That way you make sure the control gets focus when your page is activated (you may want to check for some conditions - if there are cases when you want control elsewhere). So when you want to set focus to your control, you only have to .pageframe.activepage=1, and that should fire the page1.activate.