By using GetClassName in the Dialog callback I've found I can do things in WM_CTLCOLOREDIT and like events the same way regardless of control id.
For example the following code will turn a field to red if negative based solely on the ClassName.
Code:
CASE %WM_CTLCOLOREDIT LenT& = GetClassName(CBLPARAM,DispStr,%MAX_PATH) IF TRIM$(DispStr) = "NEditNumber" THEN GetWindowText CBLPARAM,Txt,LenT& IF VAL(Txt) < 0 then SetTextColor CBWPARAM,%RED SetBkColor CBWPARAM,%WHITE FUNCTION=App_Brush ELSE SetTextColor CBWPARAM,%BLACK SetBkColor CBWPARAM,%WHITE FUNCTION=App_Brush END IF END IF