Hallo Homer,
hat ein Control auf einer WinForm keine Methode FindChildControl() mehr?
Wenn nicht, dann würde ich mir deine Such-Routine eher so vorstellen:
Delphi-Quellcode:
Function Finde(sender : control; const c_name_s : String) : Control;
var
c_ctrl : Control;
begin
Result := NIL;
for c_ctrl in sender.Controls do begin
if (c_ctrl.Name = c_name_s)
then Result := c_ctrl
else Result := Finde(c_ctrl, c_name_s);
if Assigned(Result) then
Exit;
end;
end;
Dabei suchst du depth-first.
Grüße vom marabu