Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    79

    [VB.Net] Controlli aggiunti dinamicamente (manuale Balena VB.Net Nozioni base p.346)

    Ho provato a seguire le indicazioni del manuale in oggetto per aggiungere dinamicamente delle etichette durante l'esecuzione del programma.
    Il seguente codice in una Private Sub della form funziona e crea 5 etichette con sfondo rosso nella Form
    **************************
    For k = 1 To 5
    Dim etik As New Label
    etik.BackColor = System.Drawing.Color.Red
    etik.Location = New System.Drawing.Point(1, 8 + ((k - 1) * 32))
    etik.Name = "Elle" & CStr(k)
    Me.Controls.Add(etik)
    etik.Text = "Prova " & CStr(k)
    Next

    **************************
    Due domande:
    1) come faccio a rimuovere i controlli fuori dalla sub? Me.Controls.Remove(etik) NON FUNZIONA FUORI DALLA SUB!
    ***
    2) come si referenzia il singolo controllo fuori (o dentro la sub) DOPO AVERLO CREATO, MAGARI PER ASSEGNARLI UNA TEXT DIVERSA?
    Potete aiutarmi?
    Ciao!
    MXL

  2. #2
    codice:
    Sub RimuoviLabel
        Dim InsiemeControlli
        Dim Oggetto
        
        InsiemeControlli = Me.Controls
        For Each Oggetto In InsiemeControlli
            If Oggetto.Name = "Elle3" Then
                Me.Controls.Remove(Oggetto)
                Exit For
             End If
        Next
    End Sub
    
    Sub ModificaTextDellaLabel
        Dim InsiemeControlli
        Dim Oggetto
        
        InsiemeControlli = Me.Controls
        For Each Oggetto In InsiemeControlli
            If Oggetto.Name = "Elle3" Then
                Me.Controls.Text("Nuovo Text")
                Exit For
             End If
        Next
    End Sub

  3. #3
    Vi ricordo che per una maggiore leggibilita e velocità di esecuzione nei cicli For Each é meglio usare Casting Espliciti ...


    CType(ctrl,label).Text

    If TypeOf Ctrl is Label

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.