ok ora ho capito
Allora prendi il tuo ID e fai la cosa inversa a quanto sopra.
codice:
public string AlberoFigli = "";
public void CercaFigli(int ID)
{
AlberoFigli = ID.ToString();
// cerco l'eventuale Figlio del mio ID passato alla funzione
SQL = "Select * from tabella where IDPadre = " + ID.ToString();
// operazioni per leggere il DB
// se il datareader ha dei risultati, ovvero il mio ID selezionato ha un figlio, richiamo nuovamente la funzione CercaFiglio col nuovo ID, altrimenti esco dalla funzione.
if (dr.read())
{
// Concateno il figlio trovato
AlberoFigli += ", " + dr["IDFiglio"].ToString();
// vedo se ha a sua volta dei figli.
CercaFigli(int.Parse(dr["IDFiglio"].ToString()));
}
}
USCITO DALLA FUNZIONE AVRAI LA TUA VARIABILE AlberoFigli = "1, 4, 7, 8, 10".