ho fatto qualche prova, ed in effetti la soluzione che si presta meno a problemi, è quella di utilizzare una routine in ogni usercontrol.
in pratica nel tuo usercontrol puoi esporre una collection dei controlli in esso contenuti, si può fare anche senza far ricorso ad una classe, in questo modo:
e poi nell'evento Initialize del'UserControl:codice:Public Controls As Collection
in questo modo anche il tuo UserControl dispone di una Collection Controls che puoi ciclare.codice:Private Sub UserControl_Initialize() Set Controls = New Collection Dim c As Control For Each c In UserControl Controls.Add c Next c End Sub
per far vedere il controllo alla routine presente nel modulo esterno potresti passare l'oggetto Extender che in pratica è l'oggetto Usercontrol così come viene istanziato sul form, quindi alla pressione del CommandButton interno all'UserControl potresti scrivere:
il problema sta nell'individuare il Container di ogni singolo controllo presente nella collection, che per motivi che dovrei approfondire, non riesce.codice:DisAbilitaContenitore fraPannelloCategorie, Extender, False
giunto a ciò, come ti dicevo, penso che la strada più semplice e priva di intoppi sia proprio quella di predisporre una routine per ogni UserControl.
Boolean

Boolean
Rispondi quotando