Originariamente inviato da Stibbert
Ho un controllo personalizzato che ho chiamato MultiBox, il cui nome è "Dato"
Al suo interno c'è una Label e una TextBox che si chiamano rispettivamente "Label" e "TextBox"

codice:
        For Each ctrl As Control In Me.Controls
            If TypeOf ctrl Is MultiBox And ctrl.Name = "Dato" Then                      
                Dim tb As TextBox = DirectCast(ctrl, TextBox)  
                    If tb IsNot Nothing Then
                    tb.Copy()  
                End If
             End If
        Next
Vorrei copiare il contenuto della textbox.
Il problema è accedere all'interno della Multibox, dovrebbe essere la riga che ho evidenziato in rosso.
Come faccio ad accedere a Dato.Textbox.Text?

Grazie.
Per quel che ne so...proprio con "Dato.Textbox.Text"....
Il ciclo sui controlli non servirebbe visto che ti serve il testo di un unico controllo conosciuto, almeno da quanto ho intuito.
Comunque hai fatto un pò di confusione, devi accedere alla TextBox attraverso il controllo padre e non "direttamente", inoltre con il DirectCast cerchi di convertire due controlli diversi quindi è un errore.
Corretto sarebbe:
codice:
        For Each ctrl As Control In Me.Controls
            If TypeOf ctrl Is MultiBox And ctrl.Name = "Dato" Then
                Dim MBox As MultiBox = DirectCast(ctrl, MultiBox)
                Console.WriteLine(MBox.TextBox1.Text)
            End If
        Next
    End Sub
Prendi anche in considerazione l' opportunità di aggiungere al tuo controllo una proprietà o routine adatta allo scopo.
Ciao