LOCAL lnColumn, lcNode, laVitals DECLARE laVitals[1,2] &&array used to store all the vitals that are not being removed lcNode = This.List(this.ListIndex, 2) && NodeIndex used to bold and un-bold the node on tree ****************************************************************** ** Scan through listbox and stuff all non-selected vitals in the ** array ****************************************************************** lnPosition = 1 FOR i = 1 TO this.ListCount IF !THIS.Selected(i) laVitals[lnPosition,1] = THIS.List(i, 1) laVitals[lnPosition,2] = THIS.List(i, 2) lnPosition = lnPosition + 1 DIMENSION laVitals[lnPosition,2] ENDIF ENDFOR ****************************************************************** ** Un-Bold the corresponding node on the tree ****************************************************************** WITH ThisForm.Ctreeviewctrl1.TREEVIEW.NODES(lcNode) .FORECOLOR = RGB(0,0,0) .BOLD = .T. ENDWITH ****************************************************************** ** Clear the listbox of all items ****************************************************************** THIS.Clear() ****************************************************************** ** Stuff the items from the array back in the listbox ****************************************************************** FOR i = 1 TO (ALEN(laVitals,1)- 1) THIS.AddListItem(laVitals(i,1),i,1) THIS.AddListItem(laVitals(i,2),i,2) ENDFORIf there is a better way of doing this I would be very interested to know.