Optgroup:Init THIS.AddProperty('cControlSource',THIS.ControlSource) THIS.ControlSource = '' Optgroup:Refresh THIS.Value = IIF(EVALUATE(THIS.cControlSource),1,2) Optgroup:InteractiveChange REPLACE (JUSTEXT(THIS.cControlSource)) WITH (THIS.Value=1) IN (JUSTFNAME(THIS.cControlSource)) Optgroup:ProgrammaticChange REPLACE (JUSTEXT(THIS.cControlSource)) WITH (THIS.Value=1) IN (JUSTFNAME(THIS.cControlSource))you may need to make some small adjustments .. but this should get you started ..