OK, en la parte donde cargas el combo todo bien, sólo hay que agregar una línea:
Cita:
Iniciado por yetrus Dim da As New SqlDataAdapter("SELECT RutE FROM cliente ", conn)
Dim ds As New DataSet
da.Fill(ds, "cliente")
With DropDownList1
.DataTextField = "RutE"
.DataValueField="campo2" ' generalmente es una llave primaria
.DataSource = ds.Tables("cliente")
.DataBind()
End With
Y cuando se cambie el index, no es necesario hacer esto:
Cita:
Iniciado por yetrus Private Sub DropDownList1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged
conn.Open()
Dim cmd As New SqlCommand("select * from cliente where RutE = '" & DropDownList1.SelectedValue & "'")
cmd.Connection = conn
Dim dr As SqlClient.SqlDataReader
dr = cmd.ExecuteReader
While dr.Read
TextBox1.Text = dr.GetValue(0)
Label1.Text = dr.GetValue(1)
End While
dr.Close()
conn.Close()
End Sub
Solamente debes hacer lo siguiente, tomando en cuenta que "campo2" es el campo que se puso fuera el DataValueField del dropdownlist
Código:
text1.Text=DropDownList1.SelectedItem .Text ' da DataTextField --- RutE
label1.text=DropDownList1.SelectedItem .Value ' da DataValueField ---campo2
Espero ahora si me haya explicado y sea lo que buscas