Llenado de Combo Box


29 de Octubre del 2019

Antes que nada, deseo saludarlos y agradecerles que me ayuden con este tema por favor

Ahora si, la cuestion que tengo es, puedo hacer que al seleccionar un color en un combo box, ese color seleccionado ya no aparezca en los de mas combo box ej: si en cmbcol1 selecciono "Azul", entonces en todos los de mas ya no me aparezca ese item, solo que lo cambie por otro color

Como ven lo logro hacer con un Select Case o con un If, pero ocupa muchas lineas de codigo, quisiera hacerlo de una forma mas sencilla

Public Class Form1
Public nacion() As String = {"Britanico", "Sueco", "Aleman", "Ingles", "Noruego"}
Public color() As String = {"Blanco", "Amarillo", "Rojo", "Verde", "Azul"}
Public bebida() As String = {"Agua", "Cafe", "Té", "Leche", "Cerveza"}
Public cigarro() As String = {"Pall Mall", "Blends", "Prince", "Dunhill", "Bluemasters"}
Public mascota() As String = {"Pez", "Gato", "Perro", "Caballo", "Pajaro"}
Public obj As Object
Public col As Integer
Public arr As Object
Private Sub llenado()
obj.Items.AddRange(arr)
End Sub

Private Sub limpiado()
obj.Items.Clear
End Sub

Private Sub remover()
Select Case cmbcol1.SelectedIndex
Case 0
obj.Items.RemoveAt(0)
Case 1
obj.Items.Removeat(1)
Case 2
obj.Items.Removeat(2)
Case 3
obj.Items.Removeat(3)
Case 4
obj.Items.Removeat(4)
End Select
Select Case cmbcol2.SelectedIndex
Case 0
obj.Items.Removeat(0)
Case 1
obj.Items.Removeat(1)
Case 2
obj.Items.Removeat(2)
Case 3
obj.Items.Removeat(3)
Case 4
obj.Items.Removeat(4)
End Select
Select Case cmbcol3.SelectedIndex
Case 0
obj.Items.Removeat(0)
Case 1
obj.Items.Removeat(1)
Case 2
obj.Items.Removeat(2)
Case 3
obj.Items.Removeat(3)
Case 4
obj.Items.Removeat(4)
End Select
Select Case cmbcol4.SelectedIndex
Case 0
obj.Items.Removeat(0)
Case 1
obj.Items.Removeat(1)
Case 2
obj.Items.Removeat(2)
Case 3
obj.Items.Removeat(3)
Case 4
obj.Items.Removeat(4)
End Select
Select Case cmbcol5.SelectedIndex
Case 0
obj.Items.Removeat(0)
Case 1
obj.Items.Removeat(1)
Case 2
obj.Items.Removeat(2)
Case 3
obj.Items.Removeat(3)
Case 4
obj.Items.Removeat(4)
End Select

End Sub

Private Sub cmbcol1_GotFocus(sender As Object, e As EventArgs) Handles cmbcol1.GotFocus
arr = color
obj = cmbcol1
limpiado()
llenado()
remover()
End Sub

Private Sub cmbcol2_GotFocus(sender As Object, e As EventArgs) Handles cmbcol2.GotFocus
arr = color
obj = cmbcol2
limpiado()
llenado()
remover()
End Sub

Private Sub cmbcol3_GotFocus(sender As Object, e As EventArgs) Handles cmbcol3.GotFocus
arr = color
obj = cmbcol3
limpiado()
llenado()
remover()
End Sub

Private Sub cmbcol4_GotFocus(sender As Object, e As EventArgs) Handles cmbcol4.GotFocus
arr = color
obj = cmbcol4
limpiado()
llenado()
remover()
End Sub

Private Sub cmbcol5_GotFocus(sender As Object, e As EventArgs) Handles cmbcol5.GotFocus
arr = color
obj = cmbcol5
limpiado()
llenado()
remover()
End Sub
End Class