Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    17

    [VB.NET] Controllo da stringa del nome

    Ciao, non riesco a venirne a capo, ho cercato ovunque nei forum e ci sono molte soluzioni ma a me (visual basic 2010 ex) non ne funziona nessuna
    in pratica ho molti controlli con lo stesso prefisso cambia solo il numero alla fina e vorrei poter fare un'azione con con un ciclo
    In pratica come ricavo un controllo da una stringa?
    Me.Controls.Item("label1").Text = "ciao"
    questo non funziona, ho provato anche con ctype e directcast, ma niente non ci riesco

  2. #2
    non ho capito il problema, puoi spiegarti meglio? grazie

  3. #3

    Moderazione

    Inoltre, dovresti specificare di che linguaggio si sta parlando... "VB" senza specificare la versione può indicare almeno tre linguaggi estremamente differenti.
    Ultima modifica di MItaly; 01-10-2013 a 16:54
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    17
    Scusate il linguaggio ho messo che uso visual basic 2010 express quindi mi pare sia VB.NET,
    il problema e che io voglio definire il nome di un controllo con una stringa es. "Label" & i dove i e un integer definito da for i = 0 to n pero io non riesco a ricavare il controllo al quale poi voglio cambiare es il text quindi pensavo Me.Controls.item("Label" & i).text = "ciao" ma come detto prima non funziona perche mi dice che faccio riferimnto ad un controllo inesistente
    cosa devo fare?

  5. #5
    Quote Originariamente inviata da Pinzid Visualizza il messaggio
    Scusate il linguaggio ho messo che uso visual basic 2010 express quindi mi pare sia VB.NET,
    Scusa, scemo io che ho letto di fretta ; aggiungo il "tag" al titolo.
    il problema e che io voglio definire il nome di un controllo con una stringa es. "Label" & i dove i e un integer definito da for i = 0 to n pero io non riesco a ricavare il controllo al quale poi voglio cambiare es il text quindi pensavo Me.Controls.item("Label" & i).text = "ciao" ma come detto prima non funziona perche mi dice che faccio riferimnto ad un controllo inesistente
    cosa devo fare?
    Se il controllo esiste già e con quel nome dovrebbe funzionare... in ogni caso, normalmente è preferibile lavorare con una collection o un array di controlli piuttosto che fare "pasticci" con i nomi.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    17
    Grazie per la risposta , purtroppo pero devo contraddirti, con quel metodo anche se il controllo esiste non me lo trova, cioe, io come nome controllo penso sia ctrl.name (non sono molto pratico di vb) e potresti spigerti meglio col discorso collection ed array? magari cn codice? grazie mille

    edit: non mi trova il controllo nemmeno se in item() metto il nome del controllo senza effettuare espressioni complicate ed ho provato su piu controlli
    Ultima modifica di Pinzid; 02-10-2013 a 10:05

  7. #7
    Per caso il controllo che cerchi è in un sottocontenitore (tipo un group box o roba del genere)?
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    17
    Grande hai regione, il controllo è in un TabControl infatti se metto un controllo fuori dai tab (che nn avevevo mai provato visto che sono pochi) funziona
    Tanto per completezza come faccio ad arrivare al controllo nella tabpage?

  9. #9
    Devi usare la proprietà Controls della tabpage invece di quella del form.
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    17
    Perfetto RISOLTO come dici tu nomecontenitore.Controls.Item("stringanomecontroll o).propietà
    grazie

Tag per questa discussione

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.