Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    [VB2008] Popolare listbox

    Salve a tutti sono nuovo, mi sto approcciando al linguaggio VB.net leggendo un libro "VISUAL BASIC 2008 passo per passo di Halvorson", purtroppo questo libro non tratta molto il discorso dei database, per tale motivo sto procedendo all'acquisto di uno che tratti ado.net 2.0, ma ora veniamo a noi:
    sto creando un rubrica telefonica e vorrei impostare una funzione filtro che in base alla lettera scelta mi visualizzi nella listbox tutti i cognomi corrispondenti a quella lettera in modo che poi scegliendo il nome che interessa si riempiano delle textbox con i dati di quel nome.
    Sul form ho quindi 14 cmdbotton dove ci sono le lettere dell'alfabeto a due a due (A-B, C-D, ecc) una listbox.

    Dimenticavo di dire che ho un database di access collegato al progetto.
    spero di essere stato chiaro.

  2. #2
    Ciao.
    Hai usato il Wizard di VisualStudio per collegare il database all'applicazione?

    Se si .... allora dovresti già avere a disposizione un BindingSource il quale, espone la proprietà Filter che puoi valorizzare secondo i criteri che ritieni opportuni.
    ES.:
    codice:
    TuoBindingSource.Filter="Cognome LIKE '" & Lettera & "*'"
    E' sufficiente, poi, associare il BindingSource al DataSource della ListBox per ottenere i records filtrati.

    Facci sapere...
    Ciao

  3. #3
    Grazie per la risposta!
    si ho usato il Wizard. ma quando scrivo il tuo codice cosi

    ContattiBindingSource.Filter="Cognome LIKE '" & A & "*'" mi dice variabile A non dichiarata.

    scusa ma sono un principiante.
    e possibile allegare il file del mio progetto cosi da renderti conto meglio della situazione?

    ciao e grazie

  4. #4
    Ciao
    Se scrivi così cerca una variabile che si chiama A
    ContattiBindingSource.Filter="Cognome LIKE '" & A & "*'"

    Per fare funzionare correttamente questa funzione con le lettere fisse come fai tu devi scrivere cosi:

    ContattiBindingSource.Filter = "Cognome LIKE 'A*'"

  5. #5

    codice:
    ContattiBindingSource.Filter="Cognome LIKE '" & A & "*'"
    al posto di A ci devi mettere la variabile che contiene la lettera.
    Quindi ... se tu scrivessi la lettera in una textbox ...
    codice:
    ContattiBindingSource.Filter="Cognome LIKE '" & TuaTextBox.Text & "*'"
    Facci sapere...
    Ciao

  6. #6
    siete stati ciarissimi, ma dato che sono alle prime armi non riesco ad ottenere quello che voglio.
    vi do il link per scaricare il file del progetto cosi da por capire di cosa parlo e se possibile darmi una dritta sugli errori.

    grazie

    http://www.megaupload.com/?d=DQAMU7LO

  7. #7
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Dato che usi diversi pulsanti, il valore cambia a seconda del pulsante, per cui devi rendere la query dinamica cioè pronta ad accettare qualsiasi lettera come parametro.
    Il fatto che tu usi 2 lettere anzichè una sola complica la faccenda (ma non troppo).
    Supponiamo che i tuoi pulsanti hanno Name e Text così impostati:
    - ButtonAB -> A-B
    - ButtonCD -> B-C
    - ButtonEF -> C-F
    ecc...

    1) Devi dichiarare due variabili a livello di form
    codice:
    Dim m_LetteraScelta1 As String = ""
    Dim m_LetteraScelta2 As String = ""
    2) Negli eventi Click di ogni pulsante devi assegnare il valore alla variabile, ad esempio per il ButtonAB_Click (...) devi inserire
    codice:
    m_LetteraScelta1 = Mid(ButtonAB.Text , 1, 1) 
    m_LetteraScelta2 = Rigth(ButtonAB.Text , 3, 1)
    3) Dopo puoi formulare la query, il tutto diventa:
    codice:
    m_LetteraScelta1 = Mid(ButtonAB.Text , 1, 1) 
    m_LetteraScelta2 = Rigth(ButtonAB.Text , 3, 1) 
    
    Dim sFilter As String = "Cognome LIKE '" & m_LetteraScelta1 & "%' OR Cognome LIKE '" & m_LetteraScelta2 & "%'"
    
    ContattiBindingSource.Filter=sFilter


  8. #8
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Originariamente inviato da Kestrel82
    siete stati ciarissimi, ma dato che sono alle prime armi non riesco ad ottenere quello che voglio.
    vi do il link per scaricare il file del progetto cosi da por capire di cosa parlo e se possibile darmi una dritta sugli errori.

    grazie

    http://www.megaupload.com/?d=DQAMU7LO
    Non è prassi chiedere a chi ti vuole aiutare di prendersi la briga di scaricare il progetto, testarlo, correggertelo, e poi darti la soluzione (qualcuno potrebbe chiedere un compenso per questo).
    Ma anche lo facesse, non risolvi il tuo problema di base.
    Io do per scontato che tu voglia imparare, non che tu non stia cercando qualcuno che faccia il lavoro al posto tuo.

    Quello che invece devi fare da subito è comprarti un libro sul linguaggio SQL (oppure cercare tra le tantissime guide disponibili su internet) e studiartelo.
    Il linguaggio SQL-ANSI-92 è universale, va bene per qualsiasi tipo di database, poi ogni database ha le sue 'estensioni' che lo accrescono con ulteriori caratteristiche, che si chiamano 'dialetti'). Ad esempio, SQL Server usa il T-SQL.
    Ma la base è il SQL-ANSI-92.

    Se non conosci quello, sei come un muratore che vuole costruire un muro ma non sa nemmeno come si fa la malta e quali materiali occorrono: diventa impossibile procedere.
    Hai voglia a chiedere come mettere le finestre, i tuoi muri crolleranno inesorabilmente!

    Poi, durante i tuoi esperimenti, quando c'è qualcosa che non capisci torna pure qui, mostra il codice, indica l'errore e cosa vuoi ottenere e si vede di aiutarti.


  9. #9
    Dato che usi diversi pulsanti
    Già ... mi ero dimenticato .... pardon.

    - ButtonAB -> A-B
    - ButtonCD -> B-C
    - ButtonEF -> C-F
    diventa
    - ButtonAB -> A-B
    - ButtonCD -> C-D
    - ButtonEF -> E-F


    Se non conosci quello, sei come un muratore che vuole costruire un muro ma non sa nemmeno come si fa la malta e quali materiali occorrono: diventa impossibile procedere.
    Hai voglia a chiedere come mettere le finestre, i tuoi muri crolleranno inesorabilmente!
    Concordo!

  10. #10
    Gibra concordo con Lei su quello che dice, se rilegge il post dall'inizio ho detto che sto leggendo il libro visual basic 2008 passo passo e sto per acquistare un libro su ado.net 2.0
    Se ho postato il link di un mio progetto (non obbligo nessuno a scaricarlo per carità!!!) è solo per far capire meglio il mio problema poi chi non ha voglia di scaricarlo non lo fa. Non chiedo a nessuno di fare il lavoro al posto mio, anche perchè come dice anche Lei il mio intento e imparare e capire.
    Purtroppo nella vita non basta solo la teoria, ma serve anche molta pratica e anche un muratore che ha studiato come costruire un muro senza esperienza non riuscirà mai a realizzarlo correttamente come farebbe un muratore esperto.

    Cmq grazie per l'aiuto.

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.