LOCAL lnSelObjectCount, loGridRef, lnCnt LOCAL ARRAY laSelectedObject[1], laColumnSources[1] lnSelObjectCount = ASELOBJ(laSelectedObject) IF lnSelObjectCount = 0 WAIT WINDOW 'Select a grid in Form Designer first' nowait RETURN ENDIF loGridRef = laSelectedObject[1] IF loGridRef.BaseClass # 'Grid' WAIT WINDOW 'One Grid object must be selected' nowait RETURN ENDIF FOR lnCnt = 1 TO loGridRef.ColumnCount IF NOT EMPTY(loGridRef.Columns(lnCnt).ControlSource) loGridRef.Columns(lnCnt).Name = 'col'+PROPER(JUSTEXT(loGridRef.Columns(lnCnt).ControlSource)) oControl = loGridRef.Columns(lnCnt).Controls(2) cPrefix = ICASE( oControl.BaseClass = 'Textbox','txt' ; , oControl.BaseClass = 'Combobox','cb' ; , oControl.BaseClass = 'Checkbox','chk' ; , oControl.BaseClass = 'Commandbutton', 'cmd' ; , oControl.BaseClass = 'Container', 'cnt' ; , oControl.BaseClass = 'Control', 'cnt' ; ,'obj') loGridRef.Columns(lnCnt).Controls(1).Name = 'hd' + PROPER(JUSTEXT(loGridRef.Columns(lnCnt).ControlSource)) loGridRef.Columns(lnCnt).Controls(2).Name = cPrefix+PROPER(JUSTEXT(loGridRef.Columns(lnCnt).ControlSource)) ENDIF NEXT