*Form.LoopThrouhgControls() lparameters loObject local loControl, lcBaseClasses lcBaseClasses = 'FORM GRID COLUMN CONTAINER CONTROL COMMANDGROUP OPTIONGROUP PAGE PAGEFRAME' do case case type('loObject.ControlCount') = 'N' for each loControl in loObject.Controls loControl.Setup() if upper(loControl.BaseClass) $ lcBaseClasses thisform.LoopTHroughControls(loControl) endif endfor case type('loObject.ButtonCount') = 'N' for each loControl in loObject.Buttons loControl.Setup() if upper(loControl.BaseClass) $ lcBaseClasses thisform.LoopTHroughControls(loControl) endif endfor case type('loObject.PageCount') = 'N' for each loControl in loObject.Pages loControl.Setup() if upper(loControl.BaseClass) $ lcBaseClasses thisform.LoopTHroughControls(loControl) endif endfor case type('loObject.ColumnCount') = 'N' for each loControl in loObject.Columns loControl.Setup() upper(if loControl.BaseClass) $ lcBaseClasses thisform.LoopTHroughControls(loControl) endif endfor endcaseWhich reminds me of a wish, all container objects should have Controls and ControlCount, not Pages and Pagecount, ect.