Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [VB.net] - Popolare combobox

    Salve a tutti. Ho un problema che credevo banale, ma che non mi risulta di facile soluzione.

    Premetto che vengo da access nel quale la gestione delle combobox era per me molto più semplice.

    Ho due tabelle: una chiamata 'generale' che contiene una colonna chiamata 'IdTipologia'(Numerico) e un'altra tabella chiamta 'Tipologia' composta da due colonne: 'IdTipologia' (numerico) e 'Tipologia' (testo).

    Le due tabelle sono collegate tra loro tramite tramite 'IdTipologia'. Chiaramente i dati visualizzati nella colonna 'IdTipologia' della tabella 'generale' saranno di tipo numerico. Fin qui tutto bene.

    La form che mi sono costruito è composta dai campi della tabella generale e una combobox che visualizza la tipologia e pesca i dati dalla tabella 'Tipologia'.

    Della combobox ho impostato le seguenti proprietà:
    Databindings=DataTableGenerale
    DataSource=DataTableTipologia
    DisplayMember= "Tipologia"
    ValueMember= "IdTipologia"

    Da quello che ho capito significa che ciò che vedo nella tapparella a discesa è il testo descrittivo della tipologia, mentre il valore che passo è l'id identificativo della stessa. Giusto?

    Inoltre: attualmente nella combobox mi viene visualizzato il numero della tipologia. Come faccio a visualizzare il testo, memorizzando però nella tabella 'generale' l'id identificativo?

    Spero di essere stato chiaro.

    Grazie anticipatamente per la risposta.

    Daniele

  2. #2
    Elimina il DataBindings che non ti serve

    Poi

    DataSource = TuoDataset
    DisplayMember = Tabella01.Testo
    ValueMember = Tabella02.ID

    Chiaramente avrai creato un KeyCostrain nel Dataset ...

  3. #3
    Innanzitutto grazie Raffaeu per la risposta.

    Il problema è che non riesco a creare il KeyConstrain.
    Come faccio a crearlo?

  4. #4
    Ecco qui come si crea il KeyCostrain

    Poniamo che tu hai due DataTable

    quindi dtID e dtDesc

    Crei due dataRelation
    codice:
    dcParent = dtID.Columns("ID")
    
    dcChild = dtDesc.Columns("ID")
    
    myRelation = New DataRelation("NomeRalazione",dcParent, dcChild)
    
    MioDataSet.Relations.Add(myRelation)
    MyRelation.ChildKeyCostraint.DeleteRule = Rule.Cascade
    L' ultima riga serve solamente per il dataEntry, ovvero, se vuoi che vengano eliminate anche le righe figlie relazionate con la riga madre ...

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.