|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Jul 2005
Messaggi: 66
|
[Vb.net] Lista controlli completa di quelli personalizzati
Ho creato un oggetto personalizzato e volevo creare una lista di tutti i controlli del form dato che ciclare il tutto con for each... in me.control... non mi è possibile perchè ci sono group box e altri contenitori. Ho creato la classe che credo corretta:
Public Class AllControls Inherits Control Public Sub New(ByVal control As Control) Popola(control) End Sub Private Sub Popola(ByVal ctrl As Control) Me.Controls.Add(ctrl) Dim ctrlChild As Control For Each ctrlChild In ctrl.Controls Popola(ctrlChild) Next End Sub End Class richiamando il tutto con for each però mi ha generato questo errore... Impossibile eseguire il cast di oggetti di tipo 'Tariffe_eBay.sez03negozio' sul tipo 'Tariffe_eBay.TextBoxMoney'. come risolverlo? o ancora meglio come posso prendere in riferimento un controllo del form senza ciclare per tutti i controlli? scrivendo me.control(nomecontrollo) mi restituiscie sempre un valore vuoto... grazie mille |
![]() |
![]() |
![]() |
#2 |
Member
Iscritto dal: Jul 2005
Messaggi: 66
|
Ecco come ho risolto, thanks uguale:
Public Class sez03negozio Dim AllTextBoxMoney As New ArrayList Public Sub New() ' Chiamata richiesta da Progettazione Windows Form. InitializeComponent() ' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent(). AllControlsTextBoxMoney(Me) End Sub Private Sub AllControlsTextBoxMoney(ByVal ctrl As Control) If TypeOf ctrl Is TextBoxMoney Then AllTextBoxMoney.Add(ctrl) End If Dim ctrlChild As Control For Each ctrlChild In ctrl.Controls AllControlsTextBoxMoney(ctrlChild) Next End Sub |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:58.