Combobox e db

di il
8 risposte

Combobox e db

Dunque
la cosa che vorrei fare sembra veramente semplice

devo collegare una combo box ad un campo di un database in modo da poter selezionare dalla lista della combo box il record che mi interessa
per fare ciò ho trascinato il valore combo box del campo interessato dall'origine dati alla form facendo i settaggi automatici e successivamente ho controllato i valori data member e data source (e sono corretti)
però quando faccio il debug la combo non ha nessun valore (neanche nella lista)

ho provato a risolvere usando una listbox al posto della combo box ma anche se la cosa funziona mi da dei problemi con il focus

qualcuno ha idee?

8 Risposte

  • Re: Combobox e db

    Ti conviene caricare la tabella del tuo database in un oggetto DataSet o meglio ancora in un DataTable. Poi una volta che hai i dati in una DataTable interi i dati della colonna che ti interessa
    e li carichi nella comboBox. Ora non so se hai dimestichezza con questi oggeti e non so neanche se i tuoi dati sono sun sql server , access , ecc.....
  • Re: Combobox e db

    Grazie della risposta
    in effetti avevo provato questo tipo di approccio però essendoci più tabelle dovevo riempire la form di datatable invisibili per fare il procedimento, quindi mi chiedevo se c'era qualche sistema più semplice

    ps uso vb2008 ed il database è in .mdf
  • Re: Combobox e db

    Scusa ti faccio alcune domande per capire meglio :
    La combo deve contenere i dati del campo della tabella che ti interessa ?
    Per esempio : nome1
    nome2
    nome3

    Vuoi usare una comboBox per tutte le tabelle ?

    O hai una comboBox per ogni tabella del database ?
  • Re: Combobox e db

    In pratica il database è composto da 2 tabelle
    la prima "Banche" con 1 solo campo "NomeBanca"
    e la seconda "Movimenti" con i campi "Banca" "Descrizione" "Data" "Entrate" Uscite"

    in pratica ho fatto una form che gstisce l'iserimento di un nuovo rec nella tabella "Movimenti" però volevo che il valore al campo "banca" venisse assegnato tramite una combo box che prendeva i valori dal campo "NomeBanca" nella tabella Banca

    il problema è che non riesco ad ottenere i valori nella lista della combo box, e se uso un altro oggetto (list box, datagrid ecc) ottengo i valori ma quando cliccando do il focus all'oggetto non riesco più a toglierlo ne cliccando un'altra cosa e neanche da codice....

    non ci capisco più una un'acca
  • Re: Combobox e db

    Bene , ora io non conosco il tuo grado di competenza .net.
    Il metodo migliore è quello di fare una query sulla tabella "Banche" e il risultato metterlo in un DataSet dal quale poi etrai tutti i nomi delle banche e li metti nella comboBox.
    Sai utilizzare , sqlCommand , DataSet ?
  • Re: Combobox e db

    Per quanyto riguarda la query ed il data set non ci sono problemi, ci avevo già provato però non mi risolve cmq il problema del focus

    per quanto riguarda la mia competenza me la cavavo egregiamente con vb6 ma ammetto di essere un principiante con vb2008
  • Re: Combobox e db

    Scusa fai una query sulla tabella "banca" "SELECT * FROM banca" e il risultato lo metti in un dataset OK ?

    Poi iteri nel DataSet per estrarre tutte le righe della tabella "banca" che sono appunto nel DataSet e le metti nella tua comboBox con miaCombo.Items.Add(valoreCheRicaviDalDataset).

    A sto punto hai la combo con tutti i valori della tabella banca quindi quando dovrai scegliere su quale banca fare il movimento lo fai selezionando dalla combo.

    Non posto il codice perche io programmo in c# anche se poi alla fine cambia poco.
  • Re: Combobox e db

    Ci provo
    speriamo che così la cosa funzioni
    grazie mille
Devi accedere o registrarti per scrivere nel forum
8 risposte