DEFINE CLASS mypage AS page FUNCTION Init() This.RefreshPage() ENDFUNC FUNCTION refreshpage LOCAL llRetVal, llScreenState llScreenSate = ThisForm.LockScreen ThisForm.LockScreen = .T. llRetVal = This.BeforeRefresh() IF llRetVal This.Refresh() llRetVal = This.AfterRefresh() ENDIF ThisForm.LockScreen = llScreenState RETURN llRetVal ENDFUNC [...etc...] ENDDEFINEThe only snag with this is that you cannot pre-define your pageframes to use these classes and have to add thenm at runtime using AddObject().