Jump to content

Preencher datagridview sem usar datasource e a unha


malainhocf
 Share

Recommended Posts

Olá, boa tarde a todos,

Depois de ter pesquisado no google não encontrei nada do que eu queria.

O que eu pretendo é preencher uma datagridview sem usar o datasource

Eu quero manipular os dados que vão para o datagridview.

Tudo a unha

Qual a melhor maneira ?

Obrigado

Preciso de manipular os dados e preciso de aprender a fazer sem usar datasource que é simples demais.

Link to comment
Share on other sites

Podes tentar da seguinte maneira

       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

Assim adiciona todas as linhas retornadas da query, mas podes sempre filtrar como quiseres.

Espero ter ajudado 👍

Link to comment
Share on other sites

Será que é isto

While dr.Read()
            if dr.Item("activo") = "s" then
            Me.DataGridView1.Rows.Add(dr.Item("Codigo peca"), dr.Item("Data"), dr.Item("Quantidade"), "Sim")
            else
            Me.DataGridView1.Rows.Add(dr.Item("Codigo peca"), dr.Item("Data"), dr.Item("Quantidade"), "Nao")
           end if
        End While

Sempre que o campo activo tiver um "S" ele escreve na grid "sim", case isso não aconteça escreve "nao"

Link to comment
Share on other sites

Ou simplificando

While dr.Read()
  Dim srtActivo as String = "Não"
  If dr.Item("activo") = "s" Then strActivo = "Sim"
  Me.DataGridView1.Rows.Add(dr.Item("Codigo peca"), dr.Item("Data"), dr.Item("Quantidade"), strActivo)
End While

Knowledge to the masses


Link to comment
Share on other sites

Aqui fica o código da datagridview

DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
        DataGridView1.AllowUserToAddRows = False
        DataGridView1.AllowUserToDeleteRows = False
        DataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically
        DataGridView1.MultiSelect = False
        DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect

        Dim cmd As New SqlCommand(sql, conn2)

        Dim dr2 As SqlDataReader

        dr2 = cmd.ExecuteReader

        DataGridView1.Columns.Add("idfuncionario", "ID")
        DataGridView1.Columns.Add("Descricao", "Categoria")
        DataGridView1.Columns.Add("nome", "Funcionário")
        DataGridView1.Columns.Add("activo", "Activo")
        DataGridView1.Columns.Add("custo", "Custo")
        DataGridView1.Columns.Add("utilizador", "Utilizador")

        While dr2.Read()
            Dim strActivo As String

            If dr2.Item("activo") = "S" Then
                strActivo = "Sim"
            Else
                strActivo = "Não"
            End If

            DataGridView1.Rows.Add(dr2.Item("idfuncionario"), dr2.Item("descricao"), dr2.Item("nome"), strActivo, dr2.Item("custo"), dr2.Item("utilizador"))
        End While

Espero ter ajudado e agradeço correcções ao meu código

Obrigado

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.