Enlazar un combobox con un textbox

28/08/2006 - 15:25 por Cristian Munoz | Informe spam
Que tal gente, tengo el siguiente problema.

Tengo un formulario un combobox y un textbox. Logre que al cargar el form me
llene con un campo que le mencione el combobox. hasta ahi todo bien. Ahora
lo que quiero hacer es que cuando seleccione un item del combobox me arroje
otro campo que se encuentra en la misma tabla de donde esta recogiendo los
items el combobox.

Me explico en relacion a la base de datos. existe una tabla llamada
clientes, esta tiene un campo llamado rsocial, desde aqui me carga todos los
rsocial que encuentra en el combobox. Existe un campo dentro de esa misma
tabla llamada rut, quiero que al seleccionar algun rsocial de la tabla me
arroje el rut que se encuentra asociado a esa rsocial.

El codigo para poder cargar el combobox es el siguiente.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'crear el dataadapter
Dim dadatos As New OleDbDataAdapter("select rsocial from clientes",
OleDbConnection1)
'crear el dataset
Dim dsdatos As New DataSet
'llenar el datatable
dadatos.Fill(dsdatos, "clientes")
cbotodos.DataSource = dsdatos.Tables("clientes")
cbotodos.DisplayMember = dsdatos.Tables("clientes").Columns().ToString
cbotodos.ValueMember = dsdatos.Tables("clientes").Columns(0).ToString
End Sub

El codigo que tengo hecho hasta el momento para que muestre informacion en
el textbox es el siguiente.

Private Sub cbotodos_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles cbotodos.Click
Dim dadatos As New OleDbDataAdapter("select rut from clientes where rsocial
= '& cbotodos.Text &'", OleDbConnection1)
Dim dsdatos As New DataSet
dadatos.Fill(dsdatos, "rut")
'aqui no se como poder poner en el textbox lo rescatado por la consulta
End Sub

Espero que me hayan entendido. Porsiacaso trabajo en VB net 2003.

Saludos,
 

Leer las respuestas

#1 Jorge Serrano [MVP VB]
28/08/2006 - 16:02 | Informe spam
Hola Cristian,

espero no equivocarme, pero creo que podrías utilizar el DataSet igualmente
a como lo haces en el combobox. Eso sería algo así como (espero no
equivocarme):

TextBox1.Text = dsdatos.Tables(0).Rows(0).Item(0).ToString

En el DataSet tienes el dato que quieres y de él debes sacarlo para
indicárselo a la caja de texto.

Jorge Serrano Pérez
Microsoft MVP VB.NET
PortalVB.com
http://www.portalvb.com/
Blog de Jorge Serrano
http://geeks.ms/blogs/jorge/default.aspx


"Cristian Munoz" wrote:

Que tal gente, tengo el siguiente problema.

Tengo un formulario un combobox y un textbox. Logre que al cargar el form me
llene con un campo que le mencione el combobox. hasta ahi todo bien. Ahora
lo que quiero hacer es que cuando seleccione un item del combobox me arroje
otro campo que se encuentra en la misma tabla de donde esta recogiendo los
items el combobox.

Me explico en relacion a la base de datos. existe una tabla llamada
clientes, esta tiene un campo llamado rsocial, desde aqui me carga todos los
rsocial que encuentra en el combobox. Existe un campo dentro de esa misma
tabla llamada rut, quiero que al seleccionar algun rsocial de la tabla me
arroje el rut que se encuentra asociado a esa rsocial.

El codigo para poder cargar el combobox es el siguiente.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'crear el dataadapter
Dim dadatos As New OleDbDataAdapter("select rsocial from clientes",
OleDbConnection1)
'crear el dataset
Dim dsdatos As New DataSet
'llenar el datatable
dadatos.Fill(dsdatos, "clientes")
cbotodos.DataSource = dsdatos.Tables("clientes")
cbotodos.DisplayMember = dsdatos.Tables("clientes").Columns().ToString
cbotodos.ValueMember = dsdatos.Tables("clientes").Columns(0).ToString
End Sub

El codigo que tengo hecho hasta el momento para que muestre informacion en
el textbox es el siguiente.

Private Sub cbotodos_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles cbotodos.Click
Dim dadatos As New OleDbDataAdapter("select rut from clientes where rsocial
= '& cbotodos.Text &'", OleDbConnection1)
Dim dsdatos As New DataSet
dadatos.Fill(dsdatos, "rut")
'aqui no se como poder poner en el textbox lo rescatado por la consulta
End Sub

Espero que me hayan entendido. Porsiacaso trabajo en VB net 2003.

Saludos,



Preguntas similares