LPARAMETERS pcSelectionType ** parameter and property check IF VARTYPE(pcSelectionType) # "C" OR !this.MultiSelect RETURN ENDIF LOCAL llSelectionState, lnThisItem vNewVal = UPPER(vNewVal) DO CASE CASE pcSelectionType = "ALL" llSelectionState = .T. CASE pcSelectionType = "NONE" llSelectionState = .F. CASE pcSelectionType = "INVERT" llSelectionState = .NULL. OTHERWISE RETURN ENDCASE ** do this or nothing will be selected this.SetFocus() FOR lnThisItem = 1 TO this.ListCount this.Selected(lnThisItem) = IIF(ISNULL(llSelectionState), !this.Selected(lnThisItem), llSelectionState) ENDFOR