Temo che il tuo problema sia dovuto al fatto che carichi le tre caselle facendole puntare alla stessa tabella: quando avviene una modifica in una qualsiasi, le altre riflettono il cambiamento, oppure la casella - invece di mostrarti l'elenco dei valori - tenta di scrivere nella tabella per modificarla.

Secondo me, in questo caso, è opportuno gestire il caricamento tramite codice andando a caricare la tabella e inserendone i valori "manualmente" (per usare un termine improprio) all'interno della casella, in pratica senza effettuare il binding del controllo all'origine dati tramite la proprietà DataSource.

Ciao!