Experimenta implementar este method en la clase TTreVie.prg
METHOD Find( cPrompt ) CLASS TTreeView
Local n, m := 0
Local lOk := .F.
For n := 1 To Len( ::aItems )
If ::aItems[ n ]:cPrompt == cPrompt
m := ::aItems[ n ]
lOk := .T.
Exit
Else
m := ::aItems[ n ]:Find( cPrompt )
If ValType( m ) != 'N'
lOk := .T.
Exit
EndIf
EndIf
EndFor
Return If( lOk, m, Self )
Y en TTvItem.prg
METHOD Find( cPrompt ) CLASS TTVItem
Local n := AScan( ::aItems, { |o| o:cPrompt == cPrompt } )
Return If( n > 0, ::aItems[ n ], n )
ten presente que solo encuentra la primera concidencia.
falta desarrollar mas para encontrar las demas, si es que tuviera.