(1) Keep a cursor, when you add a node, insert the key into the cursor. When you remove a node, remove the key from the cursor Testing for a node is then a seek() (2) loop through the nodes collection <pre> with thisform.treeview.Nodes for i = 1 to .Count if( .Item[ m.i ].Key = 'TheKeyIAmLookingFor' ) return TRUE endif endfor endwith return FALSE