Visual Basic.NET - Problema Combo Box y origen de datos (DATASOURCE)

 
Vista:
Imágen de perfil de Jorge

Problema Combo Box y origen de datos (DATASOURCE)

Publicado por Jorge (2 intervenciones) el 27/02/2014 21:01:36
Buenas mi consulta es la siguiente:

Tengo un combobox enlazado con una tabla de una BD Access mediante el siguiente código en el evento load del formulario:

En este caso AddToMinistery es el nombre del formulario.

Private Sub AddToMinistery_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

sql = "SELECT * FROM Ministerio"
command = New OleDbCommand(sql, connection_dos)
myAdapter.SelectCommand = command
myAdapter.Fill(myDataTable)

CboMinisterio_3.DataSource = myDataTable
CboMinisterio_3.DisplayMember = "Nombre"
CboMinisterio_3.ValueMember = "ID"
CboMinisterio_3.Text = "Elija uno..."
End Sub

La primera vez que abro el formulario NO EXISTE NINGÚN PROBLEMA, Todo corre bien.
EL PROBLEMA SURGE EN LA SEGUNDA VEZ que ejecuto el formulario, los items se duplican, ya se que se llenan por el evento load del form pero ya he intentado limpiar el combobox pero nada sirve, no importan cuantas veces vuelva a abrir el form se siguen duplicando, solo la primera vez funciona. He utilizado el formClosed y FormClosing para tratar de vaciar el combo y que cuando carge el form de nuevo lo haga sin duplicar los items.

Adjunto imagen, de la línea roja para abajo son items duplicados?
A ver si me pueden ayudar por favor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Jorge

Problema Combo Box y origen de datos (DATASOURCE)

Publicado por Jorge (2 intervenciones) el 27/02/2014 21:57:17
Ya lo resolví solo es cuestión de reiniciar las variables de tipo OleDbDataAdapter y OleDbDataTable

En mi caso era myAdapter as OleDbDataAdapter y myDataTable as OleDbDataTable

Lo que hice fue limpiarlas con el evento formClosing de mi form

Private Sub AddToMinistery_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
myAdapter.SelectCommand = Nothing
myDataTable.Clear()
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar