lunes, 29 de junio de 2009

Llenar un ComboBox

En este post vamos a c'ver como cargar de datos un ComboBox en el metodo en el evento Load del formulario.

Primaramente mostrare el codigo y luego pasare a explicarlo:

Dim db As New SqlDataAdapter("SELECT DISTINCT cod_art FROM productos", cn)
Dim dt As New DataTable
db.Fill(dt)

Me.ComboBox1.DataSource = dt
Me.ComboBox1.DisplayMember = "cod_art"
Me.ComboBox1.ValueMember = "nom_art"

donde:
  1. db es la senetcia sql
  2. dt es el datatable


Para la cual los datos de la sentencia sql se guardan el DataAdapter(db) en memoria, para la cual se debe mandar la conexion(cn) como parametro:

Dim db As New SqlDataAdapter("SELECT DISTINCT cod_art , nom_art FROM productos", cn)

Luego los datos del DataAdapter pasan a un DataTable(dt) y son llenados mediante el metodo Fill.

db.Fill(dt)

Finalmente pasamos los datos del DataTable al ComboBox mediante el metodos:

  • DataSource: Guarda todos los datos del DataTable
  • DisplayMenber: Muestra los datos dentro del ComboBox del campo elejido
  • ValueMenber: Guarda los datos del campo elegido.

Me.ComboBox1.DataSource = dt
Me.ComboBox1.DisplayMember = "cod_art"
Me.ComboBox1.ValueMember = "nom_art"