Collegare e sincronizzare due ComboBox diverse con VB.NET

Su richiesta di un amico ho realizzato un piccolo esempio di gestione della sincronizzazione e del Binding di due ComboBox diverse collegate a due tabelle diverse.

Image hosted by www.image-share.net

E' disponibile il progetto di esempio

A seguito di altre domande ho aggiornato il progetto in modo tale che utilizzi un filtro.
In entrambi i casi è  fatto un cast sul primo bindingsource e viene preso il riferimento di tipo DataRowView.

   Private Sub BindingSource1_PositionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingSource1.PositionChanged
        Dim dr As DataRowView = CType(BindingSource1.Current, DataRowView)
        'Viene utilizzato il metodo Find del secondo bindingsource in modo da impostare la posizione "corrente" del secondo bindingsource (gli altri elementi nsono disponibili) 
        Dim i As Integer = BindingSource2.Find("ID", CType(dr("idattributo"), Integer))
        BindingSource2.Position = i
    End Sub

    Private Sub BindingSource1_PositionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingSource1.PositionChanged
        Dim dr As DataRowView = CType(BindingSource1.Current, DataRowView)
        'Semplicemente viene messo un filtro (gli altri elementi di combobox2 non sono più visibili)
        BindingSource2.Filter = "ID = " & CType(dr("IdAttributo"), String)
    End Sub

Print | posted on giovedì 8 marzo 2007 15:35

Feedback

# re: Collegare e sincronizzare due ComboBox diverse con VB.NET

Left by Nikasp at 02/03/2007 13:44
Gravatar Grande Luciano! Sei il meglio ;)

# re: Collegare e sincronizzare due ComboBox diverse con VB.NET

Left by Dario at 07/03/2007 10:45
Gravatar Ciao Luciano,
ho provato il tuo esempio che funziona alla perfezione, ma il mio problema è leggermente diverso: quando tu selezioni un valore sulla prima combo, automaticamente cambiano i valori anche nelle text associate dovuto all'evento PositionChanged del Binding Source. Io ho una situazione simile, solo che la combo è stata trascinata sul form da un'origine dati. Se cambio il valore della combo tutto il meccanismo di prima non funziona. Sapresti spiegarmi come mai? Hai impostato qualcosa che mi sfugge?
Grazie mille
DARIO

# caricamento combo .net | hilpers

Left by Pingback/TrackBack at 21/01/2009 18:55
Gravatar caricamento combo .net | hilpers

Your comment:





 
Please add 2 and 5 and type the answer here:

Copyright © Luciano Bastianello

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski