CLOSE all LOCAL lcnewvalue && line of code to add to the method lcnewvalue = '' *--Form with controls to modify in this example is testform.scx *--This example modifies the interactivechange method of every combobox, textbox, editbox and listbox on form MODIFY FORM c:\forms\testform NOWAIT ASELOBJ(laform, 1) loform = laform(1) IF TYPE('loform.pageframe')<>"U" && our pageframes are always named pageframe, check for pageframe1, etc. FOR EACH lopage IN loform.PAGEFRAME.PAGES FOR EACH ocontrol IN lopage.CONTROLS IF ALLTRIM(UPPER(ocontrol.BASECLASS)) = "TEXTBOX" .or. ALLTRIM(UPPER(ocontrol.BASECLASS)) = "EDITBOX" ; .or. ALLTRIM(UPPER(ocontrol.BASECLASS)) = "COMBOBOX" ; .or. ALLTRIM(UPPER(oControl.BASECLASS)) = "LISTBOX" lcnewvalue = oControl.ReadMethod('InteractiveChange') lcnewvalue = "THISFORM.isupdated = .T."+CHR(13)+ALLTRIM(lcnewvalue)+CHR(13) ocontrol.WRITEMETHOD('InteractiveChange',lcnewvalue) ENDIF ENDFOR ENDFOR ELSE && no pageframe all controls are on the single page FOR EACH ocontrol IN loform.CONTROLS IF ALLTRIM(UPPER(ocontrol.BASECLASS)) = "TEXTBOX" .or. ALLTRIM(UPPER(ocontrol.BASECLASS)) = "EDITBOX" ; .or. ALLTRIM(UPPER(ocontrol.BASECLASS)) = "COMBOBOX" ; .or. ALLTRIM(UPPER(oControl.BASECLASS)) = "LISTBOX" lcnewvalue = oControl.ReadMethod('InteractiveChange') lcnewvalue = "THISFORM.isupdated = .T."+CHR(13)+ALLTRIM(lcnewvalue)+CHR(13) ocontrol.WRITEMETHOD('InteractiveChange',lcnewvalue) ENDIF ENDFOR ENDIF RETURN