Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di SigAlexey
    Registrato dal
    May 2014
    residenza
    Treviso
    Messaggi
    186

    [VB.NET] Ripetere stessa routine per tante textbox

    Buongiorno,
    spiego meglio il problema del titolo.

    Ho circa 70 TextBox non modificabili nelle quali c'è un valore.
    Al click di ognuna, devo aprire una pagina con dei dati relativi al valore all'interno della textbox.

    Non ho problemi a fare questo, però devo ripetere praticamente la stessa Private Sub TextBox ecc ecc per 70 volte.

    C'è per caso un modo per creare solo una Sub e legarla all'evento di ogni textbox.MouseClick?

    In teoria se dopo l'Handles metto tutte le Textbox dovrebbe funzionare, però non saprei come passare il valore corretto.

    Qualcuno ha qualche indizio? Forse sarà anche una banalità

    Grazie

  2. #2
    Utente di HTML.it L'avatar di SigAlexey
    Registrato dal
    May 2014
    residenza
    Treviso
    Messaggi
    186
    Come non detto!
    Proprio in questo momento mi è venuta l'illuminazione!
    Chiedo scusa se ho aperto il thread per nulla!

    Scrivo comunque la soluzione, sperando che possa servire a qualcuno!

    Private Sub TextBox1_MouseClick(sender As Object, e As MouseEventArgs) Handles TextBox1.MouseClick, TextBox2.MouseClick
    openDetails(CInt(sender.text))
    End Sub

    con sender.Text abbiamo il contenuto della TextBox e come dicevo nel primo messaggio aggiungendo TextBox.MouseClick di tutte le altre dopo l'Handles catturiamo l'evento!

    Se invece c'è un metodo migliore sono pronto ad idee

  3. #3
    Utente di HTML.it L'avatar di patel
    Registrato dal
    Jan 2008
    Messaggi
    1,994
    ma con 70 TB non ti converrebbe usare un array di TB o meglio una DGV ?

  4. #4
    Utente di HTML.it L'avatar di SigAlexey
    Registrato dal
    May 2014
    residenza
    Treviso
    Messaggi
    186
    Una DGV no perchè sono disposti sopra un'immagine in determinate posizioni
    L'array di TB non so come farlo con VB.NET Avevo letto che non si poteva dopo il VB6, sbaglio?
    O forse non ho ben chiaro cosa intendi

  5. #5
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,000
    Leggi qui

  6. #6
    Utente di HTML.it L'avatar di SigAlexey
    Registrato dal
    May 2014
    residenza
    Treviso
    Messaggi
    186
    Ok, ho letto e ho capito che si possono fare ahaha!

    Però, come potrebbe aiutarmi nel problema? Chiedo perchè non ho colto

    Diciamo che potrebbe aiutarmi quando al Load e nel Timer aggiorno il contenuto di tutte le TextBox, che ora faccio con


    codice:
    For Each box As TextBox In pnlCarosello.Controls.OfType(Of TextBox).OrderBy(Function(t) t.TabIndex)
               Riempi(box)
    Next

    però mi diventerebbe abbastanza incasinato doverle mettere tutte nella posizione corretta sull'immagine

  7. #7
    Quote Originariamente inviata da SigAlexey Visualizza il messaggio
    però mi diventerebbe abbastanza incasinato doverle mettere tutte nella posizione corretta sull'immagine
    puoi per piacere riformulare quest'ultima frase? non riesco a capirla...

  8. #8
    Utente di HTML.it L'avatar di SigAlexey
    Registrato dal
    May 2014
    residenza
    Treviso
    Messaggi
    186
    Certo!

    Praticamente ho un form con un panel che ha come sfondo un'immagine.
    Quest'immagine ha 70 caselle distribuite, sopra le quali devo mettere queste TextBox.

    Creando le TB dalla Progettazione riesco senza grossi problemi a posizionarle dove voglio io.
    Se invece dovessi creare le TB da codice, per utilizzare l'array di TB, in questo caso dovrei posizionare tutte le TB via codice e il lavoro mi sarebbe ben più lungo

  9. #9
    tu posizionale da progettazione, ma fa' che sia un array, così gestirai texbox(i)

  10. #10
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Tieni presente che è sempre possibile creare componenti personalizzati, derivati da un controllo TextBox esistente.

    Questo è un mio vecchio esempio, molto semplice
    VS2008 - CustomComponents (VB.NET+C#)
    http://nuke.vbcorner.net/Projects/NE...S/Default.aspx

    in cui mostro come aggiungere nuove proprietà e sfruttare gli eventi del controllo custom per eseguire determinate azioni.
    Semplice ma potente.

    E' un progetto vecchiotto (10 anni fa).
    Oggi le nuove versioni del framework ci consentono di più con meno sforzo.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.