Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Combo (VB)

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    271

    Combo (VB)

    Nel mio form ho una combo vorrei caricare i dati:
    1)un modo è quello di inserire i dati nella proprietà List
    2)un altro è quello di inserirli da programma con AddItem.
    Problema a me servirebbe sapere il 3) e cioè dal database:
    caricare i dati della mia combo dal database, in modo che se io voglio
    andare a modificarli non entro nell' applicazione ma vado nel db,
    come posso fare?
    grazie

  2. #2

    Proprietà DataField e DataSource

    Devi usare le proprietà DataField e DataSource.
    DataSource è la fonte dei dati: può essere un controllo Data presente sul form (opportunamente collegato al DB) oppure un recordset al quale puoi fare il collegamento col comando:

    Set Combo1.DataSource = Recordset

    Nella proprietà DataField imposti invece il campo del DB di riferimento (ad esempio se hai una tabella 'anagrafica' e nel combo vuoi visualizzare tutti i cognomi, farai riferimento al campo cognome della tabella).

    Spero di averti aiutato, fammi sapere...

    Ciao!!:quipy:
    lupusinfabula

    Programmatore VB, ASP, Delphi.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    271
    Io ho più Tabelle se scrivo così sa in quale tabelle andare?

    combo1.datasource=cognome


    e poi il recordset sarebbe questo?

    Dim dbRec As New ADODB.Recordset

    combo1.datafield=dbRec

  4. #4
    Utente bannato
    Registrato dal
    Mar 2002
    Messaggi
    1,811
    caricai cosi.....

    Private Sub Carica_MezzoPagamento()

    Source = "SELECT cod_mezzo,descrizione FROM mezzo_pagamento"
    rs.Open Source, conn

    Me.CBB_Pagamento.Clear
    Do While rs.EOF = False

    Me.CBB_Pagamento.AddItem rs("descrizione")
    Me.CBB_Pagamento.ItemData(CBB_Pagamento.NewIndex) = rs("cod_mezzo")

    rs.MoveNext

    Loop

    rs.Close
    End Sub


    per eventuali cancellazini basta che prndi il listindex e lo cancelli dal databse (bastera ricaricare il combo e quell'elemento non cisara piu)

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    53

    RE:Combo VB

    Ciao.
    Allora bisogna vedere se tu vuoi usare una ComboBox normale o una DBCombo, e quindi usare DAO o ADO.
    Se il database lo gestisci con DAO, potresti usare le proprietà DataSource e DataField di una ComboBox normale.
    Su DataSource ci metti il controllo Data che gestisce il database, e su DataField ci metti la tabella che ti interessa visualizzare. In questo modo tu non devi inserire una sola riga di codice, perchè la combo viene completata in automatico, riportando anche le modifiche che tu faresti al database. Se usi ADO, e vuoi usufruire di una Combo normale, dovresti farlo mediante codice, ad esempio (supponendo che ADO lo usi con ADODataControl):

    (dovrebbe essere + o - così)

    Combo1.Clear
    Adodc1.Recordset.MoveFirst
    Do While Adodc1.Recordset.EOF
    Combo1.AddItem Adodc1.Recordset.Fields(Index).Value
    Adodc1.Recordset.MoveNext
    Loop

    Se vuoi invece puoi usare una DBCombo e usare come il primo esempio le proprietà DataSource, DataField, RowSource e ListField.

    Se non ha capito male chiedevi questo?
    Fammi sapere.
    Ciao.
    Janx.

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.