Ciao.Devo scorrere tutti i controlli di un form per ricercare il controllo che nel tag ha una determinata stringa , e "farmi ritornare" il determinato controllo
ho la seguente funzione ricorsiva:
private Control TrovaControllo(Control.ControlCollection controlli,string tag)
{

foreach(Control c in controlli)
{
if(c.Controls.Count>0)
{

InizializzaControlli(c.Controls,tag);
}
if (c.Tag.ToString()==tag)
return c;


}
return null;
}

questa funzione è richiamata da
Control controllotrovato=TrovaControllo(Control.ControlCol lection controlli,string tag)
solo che dopo aver trovato il controllo(c.Tag.ToString()==tag)è true)essendo una funzione ricorsiva ritorna il valore di ingresso,quando il control non era ancora trovato.
Come posso utilizzare una funzione ricorsiva che ritorni il controllo trovato anzichè null?