Jump to content

Actualizar dados numa gridView ?


Rodrigues
 Share

Recommended Posts

Viva !

Uma Questão "básica"

Tenho uma dataGridView para ver o resultado duma SQL com base nos elementos de uma listBox?

Q.do selecciono uma linha da listBox queria ver o resultado na SQL na  dataGridView.

Vejo a 1ª escolha mas as seguintes são acrescentadas (mais linhas) !!

Como actualizo, ou seja vejo só o resultado relativo à última selecção !

Isto deve ser básico !!

Obrigado

Link to comment
Share on other sites

Se as linhas lhe são adicionadas, presumo que esteja a meter linhas à "la pata".

Como estás a mostrar as linhas a partir da tal ListBox?

Isto porque se actualizares o DataSource da DataGrid, tens o efeito desejado.

Visto isto, e mesmo que não queiras alterar o teu actual método, podes simplesmente fazer:

DataGridView1.DataSource = Nothing

Antes do bloco que mete para lá as linhas.

De qualquer maneira, explica melhor a forma como estás a trabalhar os dados para que possas ser ajudado melhor e mais rapidamente.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Estou a fazer assim:

Private Sub cboListaProfessores_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboListaProfessores.SelectedIndexChanged
        Dim SelectedProf As Integer
        con.Open()
        SelectedProf = cboListaProfessores.SelectedIndex + 1
        sql = "SELECT * From HorarioProfessor WHERE(((HorarioProfessor.cod_Prof) = " & SelectedProf & "))"
        da = New OleDb.OleDbDataAdapter(sql, con)
        da.Fill(ds, "Horarios") 'armazena os registo obtidos no DataSet ds
        DataGrid.DataSource = ds.Tables("Horarios")
        con.Close()
    End Sub
Link to comment
Share on other sites

E isso vai te acrescentando registos na DataGridView?

À primeira vista parece-me bem 😄

EDIT: Espera lá. Onde tens a instância daquela variável DS ?

Exprimenta, antes de fazeres o fill, fazer uma nova instância do dataset:

        da = New OleDb.OleDbDataAdapter(sql, con)
        ds = New System.Data.DataSet
        da.Fill(ds, "Horarios") 'armazena os registo obtidos no DataSet ds
        DataGrid.DataSource = ds.Tables("Horarios")

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.