andr3kyo Posted May 17, 2009 at 05:23 PM Report #264847 Posted May 17, 2009 at 05:23 PM Boa tarde pessoal. Estou com o seguinte problema: Tenho duas tabelas (valencias e actividades), onde cada valencia pode ter varias actividades. E quero interligar duas listbox com estas tabelas. Do tipo, uma listbox terá os registos das valencias e ao clicar em um registo, aparece na outra listbox as actividades pertencentes a esta valencia. Tenho as seguintes funçoes que se encontram no Load do form: Private Sub lerdadosvalencias() Dim con2 As New SqlClient.SqlConnection Dim cmd2 As New SqlClient.SqlCommand Dim da As New SqlDataAdapter Dim ds As New DataSet Try con2.ConnectionString = ConnStr_gia cmd2.CommandText = "SELECT * FROM Valencias" cmd2.Connection = con2 da.SelectCommand = cmd2 da.Fill(ds) lstbox_valencias.DataSource = ds.Tables(0) lstbox_valencias.DisplayMember = "DescVal" lstbox_valencias.ValueMember = "ID_Val" lstbox_valencias.Refresh() Catch ex As Exception End Try End Sub e Private Sub lerdadosactividades() Dim con As New SqlClient.SqlConnection Dim cmd As New SqlClient.SqlCommand Dim da As New SqlDataAdapter Dim ds As New DataSet Try con.ConnectionString = ConnStr_gia dgv_actividades.Columns.Clear() cmd.CommandText = "SELECT Actividades.ID_Actividade as ID_Registo, Valencias.DescVal as Valência, Actividades.DescAct as Actividade FROM Valencias INNER JOIN Actividades ON Valencias.ID_Val = Actividades.ID_Val " cmd.CommandText = cmd.CommandText & "WHERE Actividades.ID_Val = " & lstbox_valencias.SelectedValue & " ORDER BY Valencias.DescVal" cmd.Connection = con da.SelectCommand = cmd da.Fill(ds) ListBox1.DataSource = ds.Tables(0) ListBox1.DisplayMember = "Actividades.ID_Val" ListBox1.DisplayMember = "Actividades.DescAct" ListBox1.Refresh() Catch ex As Exception MsgBox("Erro!") End Try End Sub Esta ultima função é que me está a dar problemas. Ao invés do nome das actividades pertencentes a cada valencia aparece: System.Data.DataRowView Espero ter explicado de forma simples. Abraço
bruno1234 Posted May 17, 2009 at 06:15 PM Report #264866 Posted May 17, 2009 at 06:15 PM Esse problema não me é estranho de todo, penso q no forum já alguém teve um problema semelhante, experimenta fazer uma pesquisa aos topicos já existentes. Matraquilhos para Android. Gratuito na Play Store. https://play.google.com/store/apps/details?id=pt.bca.matraquilhos
jpaulino Posted May 17, 2009 at 06:16 PM Report #264868 Posted May 17, 2009 at 06:16 PM Experimenta definir o DataSource depois do DisplayMember e ValueMember
andr3kyo Posted May 17, 2009 at 07:35 PM Author Report #264901 Posted May 17, 2009 at 07:35 PM bruno1234, já estive a perder um bocado de tempo a procurar...e não encontrei nada. jpaulino, assim fiz e aparece-me a mesma coisa. Agora reparei que tinha um erro no código, ao invés de ter posto ValueMember voltei a meter DisplayMember, na listbox1. Mas já está corrigido. Mas mesmo assim deu-me outro erro...Nao abre o form que desejo e diz: "Não é possível criar uma lista subordinada para o campo Actividades."
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now