Spesso e volentieri capita di dover scorrere una ControlCollection partendo da un determinato oggetto e scendere ricorsivamente al suo interno. Il primo esempio che mi viene in mente è per analizzare in debug determinati controlli. Infatti il seguente esempio ci mostrerà come:
private void ShowControlCollection( System.Web.UI.ControlCollection _controlCollection )
{
foreach( System.Web.UI.Control _control in _controlCollection )
{
Debug.WriteLine( _control.ClientID ) ;
Debug.WriteLine( _control.UniqueID ) ;
Debug.WriteLine( _control.GetType() ) ;if( _control.HasControls() )
{
this.ShowControlCollection( _control.Controls ) ;
}}
}
L’esempio è stato fatto per una pagina aspx. Ora non vi resta che provarlo e tener sotto controllo la console di diagnostica del debug.

