Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pestana Jr

[Resolvido] Preenchendo gridview via código (C#)

Recommended Posts

Olá pessoal,

 

estou tentando preencher um gridview via código e só sei preencher através dos wizards convencionais. Sou iniciante, em programação. Alguem poderia ajudar?

 

Obrigado

 

Pestana

Compartilhar este post


Link para o post
Compartilhar em outros sites

Listas de tarefas para se dar bem:

 

a) colar a gridview no form e configurar:

> após colar, clique na setinha superior esquerda

> clique em EDITAR COLUNAS...

> ponha as colunas que deseja, como, por exemplo, BoundField

> na propriedade HEADER TEXT, coloque o nome da coluna

> na propriedade DATA FIEL, coloque qual campo da consulta (SQLDATAREADER) deve ser "clonado" os dados

 

B) codificar a consulta:

> vá na camada de dados do seu projeto e escreva uma consulta que retorne um objeto do tipo SqlDataReader.

> ver o exemplo:

 

        public SqlDataReader obterSistemas()
        {
            StringBuilder lSql = null;
            SqlDataReader retorno = null;
            SqlConnection lSqlConnection = null;

            try
            {
                lSqlConnection = obterConexao();
                lSql = new StringBuilder();

                lSql.Append(" SELECT                                    ");
                lSql.Append(" codigo, descricao                         ");
                lSql.Append(" FROM                                      ");
                lSql.Append(" dbo.SEG_SISTEMA                           ");
                lSql.Append(" order by descricao                        ");

                SqlCommand lSqlCommand = new SqlCommand(lSql.ToString(), lSqlConnection);

                lSqlConnection.Open();

                retorno = lSqlCommand.ExecuteReader();

            }
            catch (SqlException ae)
            {
                throw new AplicacaoException("Erro ao obter Sistemas", ae);
            }

            return retorno;
        }

obs.: as classes, como conexão e etc, cabe a você fazer (é o mínimo pra usar um grid)!

 

c) codificar ...aspx.cs:

> va no arquivo .cs do form e proceda como no exemplo:

 

protected void btPesquisa_Click(object sender, EventArgs e)
    {

[b]        SqlDataReader dr = obterSistemas();[/b]


        gridSistema.DataSource = dr;
        gridSistema.DataBind();
    }

obs.: a última linha em negrito é o coração da consulta, passando o parâmetro, se necessário, para a consulta. se você quer adicionar parâmetros use a proxima linha de código, na camada de dados dentro da consulta. as duas linhas finais injetam os valores retornados pelo data reader no gridview.

 

   lSqlCommand.Parameters.AddWithValue("@descricao", pParametros.descricao)

 

Bom... dei o caminho das pedras! junte tudo e resolva seu problema!

 

 

 

, bom trabalho!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Listas de tarefas para se dar bem:

 

a) colar a gridview no form e configurar:

> após colar, clique na setinha superior esquerda

> clique em EDITAR COLUNAS...

> ponha as colunas que deseja, como, por exemplo, BoundField

> na propriedade HEADER TEXT, coloque o nome da coluna

> na propriedade DATA FIEL, coloque qual campo da consulta (SQLDATAREADER) deve ser "clonado" os dados

 

B) codificar a consulta:

> vá na camada de dados do seu projeto e escreva uma consulta que retorne um objeto do tipo SqlDataReader.

> ver o exemplo:

 

        public SqlDataReader obterSistemas()
        {
            StringBuilder lSql = null;
            SqlDataReader retorno = null;
            SqlConnection lSqlConnection = null;

            try
            {
                lSqlConnection = obterConexao();
                lSql = new StringBuilder();

                lSql.Append(" SELECT                                    ");
                lSql.Append(" codigo, descricao                         ");
                lSql.Append(" FROM                                      ");
                lSql.Append(" dbo.SEG_SISTEMA                           ");
                lSql.Append(" order by descricao                        ");

                SqlCommand lSqlCommand = new SqlCommand(lSql.ToString(), lSqlConnection);

                lSqlConnection.Open();

                retorno = lSqlCommand.ExecuteReader();

            }
            catch (SqlException ae)
            {
                throw new AplicacaoException("Erro ao obter Sistemas", ae);
            }

            return retorno;
        }

obs.: as classes, como conexão e etc, cabe a você fazer (é o mínimo pra usar um grid)!

 

c) codificar ...aspx.cs:

> va no arquivo .cs do form e proceda como no exemplo:

 

protected void btPesquisa_Click(object sender, EventArgs e)
    {

[b]        SqlDataReader dr = obterSistemas();[/b]


        gridSistema.DataSource = dr;
        gridSistema.DataBind();
    }

obs.: a última linha em negrito é o coração da consulta, passando o parâmetro, se necessário, para a consulta. se você quer adicionar parâmetros use a proxima linha de código, na camada de dados dentro da consulta. as duas linhas finais injetam os valores retornados pelo data reader no gridview.

 

   lSqlCommand.Parameters.AddWithValue("@descricao", pParametros.descricao)

 

Bom... dei o caminho das pedras! junte tudo e resolva seu problema!

 

 

 

, bom trabalho!

 

Olá Caio,

 

apesar de não ter entendido a última linha de comando que você comentou, funcionaou o preenchimento perfeito. Didaticamente falando, melhor impossível.

 

Muito obrigado,

 

Até a próxima,

 

Forte abraço,

 

Pestana

Compartilhar este post


Link para o post
Compartilhar em outros sites

Listas de tarefas para se dar bem:

 

a) colar a gridview no form e configurar:

> após colar, clique na setinha superior esquerda

> clique em EDITAR COLUNAS...

> ponha as colunas que deseja, como, por exemplo, BoundField

> na propriedade HEADER TEXT, coloque o nome da coluna

> na propriedade DATA FIEL, coloque qual campo da consulta (SQLDATAREADER) deve ser "clonado" os dados

 

B) codificar a consulta:

> vá na camada de dados do seu projeto e escreva uma consulta que retorne um objeto do tipo SqlDataReader.

> ver o exemplo:

 

        public SqlDataReader obterSistemas()
        {
            StringBuilder lSql = null;
            SqlDataReader retorno = null;
            SqlConnection lSqlConnection = null;

            try
            {
                lSqlConnection = obterConexao();
                lSql = new StringBuilder();

                lSql.Append(" SELECT                                    ");
                lSql.Append(" codigo, descricao                         ");
                lSql.Append(" FROM                                      ");
                lSql.Append(" dbo.SEG_SISTEMA                           ");
                lSql.Append(" order by descricao                        ");

                SqlCommand lSqlCommand = new SqlCommand(lSql.ToString(), lSqlConnection);

                lSqlConnection.Open();

                retorno = lSqlCommand.ExecuteReader();

            }
            catch (SqlException ae)
            {
                throw new AplicacaoException("Erro ao obter Sistemas", ae);
            }

            return retorno;
        }

obs.: as classes, como conexão e etc, cabe a você fazer (é o mínimo pra usar um grid)!

 

c) codificar ...aspx.cs:

> va no arquivo .cs do form e proceda como no exemplo:

 

protected void btPesquisa_Click(object sender, EventArgs e)
    {

[b]        SqlDataReader dr = obterSistemas();[/b]


        gridSistema.DataSource = dr;
        gridSistema.DataBind();
    }

obs.: a última linha em negrito é o coração da consulta, passando o parâmetro, se necessário, para a consulta. se você quer adicionar parâmetros use a proxima linha de código, na camada de dados dentro da consulta. as duas linhas finais injetam os valores retornados pelo data reader no gridview.

 

   lSqlCommand.Parameters.AddWithValue("@descricao", pParametros.descricao)

 

Bom... dei o caminho das pedras! junte tudo e resolva seu problema!

 

 

 

, bom trabalho!

 

 

Olá Caio, deixa eu tirar mais uma dúvida....beleza funcionou, mas na verdade o quero fazer é fazer com que apareça aquela imagem de uma máq. fotográfica quando for o caso. Ex: tenho um campo "possui_fotos" que fica igual a 1 se houver fotos. Então nesse caso apresentarei aquela imagem da câmera e nela farei um link para outra página passando como parâmetro um Id para lá então apresentar as imagens.

Tem solução,

 

Obrigado

]

pestana

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.