Jump to content

Erro...adicionar colunas a um datagridview [Resolvido]


duduml
 Share

Recommended Posts

Bom dia!

fiz uma consulta com npgsql e ao executar dá-me erro na seguinte linha:

Me.DataGridView1.Rows.Add(dr.Item("Codigo peca"), dr.Item("Data"), dr.Item("Quantidade"), dr.Item("Referencia"))

O erro é o seguinte: "Não pode ser adicionada nenhuma linha a um controlo DataGridView que não tenha colunas. As colunas têm de ser adicionadas primeiro."

O código completo:

        Dim myConnectionString As String = ("Server=localhost;Port=5432;User Id=postgres;Password=postgres;Database=controlo;")
        Dim conn As New NpgsqlConnection(myConnectionString)

        conn.Open()

        Dim command As New NpgsqlCommand("SELECT * FROM dados", conn)
        Dim dr As Npgsql.NpgsqlDataReader

        dr = command.ExecuteReader()
        
        DataGridView1.Rows.Clear()

        While dr.Read()
            Me.DataGridView1.Rows.Add(dr.Item("Codigo peca"), dr.Item("Data"), dr.Item("Quantidade"), dr.Item("Referencia"))
        End While
        conn.Close()
        conn = Nothing
        command = Nothing
        dr = Nothing

alguém me pode auxiliar???

CUMPS

"use windows, você merece!"

Link to comment
Share on other sites

Já testas-te obviamente o comando SQL, directamente no motor e verificas-te o que te devolve.

Eu se fosse a ti fazia assim:

'...
While dr.Read()
      Dim CodigoPeca as String = dr.Item("Codigo peca")
      Dim Data as String = dr.Item("Data")
      Dim Quantidade as String = dr.Item("Quantidade")
      Dim Referencia as String = dr.Item("Referencia")
      Me.DataGridView1.Rows.Add(CodigoPeca, Data, Quantidade, Referencia)
End While
'...

Assim consegues ver o que retorna da consulta, antes de criar a Linha nada DGV.

Já agora, verifica dr.Item("Codigo peca") se tem espaço ou não, por norma não uso espaços na denominação das colunas para eliminar erros esquisos.

Ricardo Timóteo

Link to comment
Share on other sites

faltava criar as colunas:

DataGridView1.Columns.Add("numero", "numero")
        DataGridView1.Columns.Add("nome", "nome")
        DataGridView1.Columns.Add("nickname", "nickname")
        DataGridView1.Columns.Add("codigopessoal", "codigopessoal")
        DataGridView1.Columns.Add("consultar", "consultar")
        DataGridView1.Columns.Add("inserir", "inserir")
        DataGridView1.Columns.Add("administrar", "administrar")

Obrigado!

CUMPS

"use windows, você merece!"

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.