Aplicação Windows - DataGridView

Nesta aula iremos aprender como utilizar o DataGridView, iremos ver para que serve o DataSource e formas diferentes de preencher este componente.

assinaturaAssine nossa Comunidade

Aplicação Windows - DataGridView

DataGridView é uma tabela onde nós inserimos todos os item que temos e é formado por colunas e linhas.

Um exemplo da utilização do Datagridview é quando temos um formulário para preencher e esse formulário possui as informações de nome, endereço, telefone, rg, etc..Após o preenchimento, criamos uma lista no c# e esta lista será mostrada no componente Datagridview.

O Datagridview utiliza de uma propriedade chamada Datasource, responsável por pegar todas as coleções e mostrá-las na tela.

Para inserir um Datagridview no formulário, basta abrir a caixa de ferramentas Toolbox, localizar o componente e arrastá-lo para o formulário.

Maneira Simples de preencher DatagridView

Vamos preencher o DataGridView no método load do formulário de uma maneira simples, utilizando a propriedade Datasource:

      
        namespace WindowsFormsApplication  
        {
         public partial class Form1 : Form 
         {
           public Form1()
           {
             InitializeComponent();
           }
  
           private void Form1_load(object sender, EventArgs e)
           {
             dataGridView1.DataSource = Estado.lista();
           }

         }
        }
       
    

Para que o DataGridView preencha cada coluna da classe Estado, precisamos fazer uma alteração na classe Estado, criando as propriedades dos atributos Id e Nome, ou seja, inserindo in get e um set :

      
        namespace WindowsFormsApplication
        {
          public class Estado
          {
            public int Id { get;set };
            public string Nome { get;set };
  
          }
        } 
      
    

Maneira Complexa de preencher DatagridView

Podemos preencher o DataGridView escolhendo quais colunas queremos mostrar, de uma maneira mais complexa, utilizando lista de array de string[].

      
        namespace WindowsFormsApplication  
        {
         public partial class Form1 : Form 
         {
           public Form1()
           {
             InitializeComponent();
           }
  
           private void Form1_load(object sender, EventArgs e)
           {

            dataGridView1.ColumnCount = 2;
            dataGridView1.Columns[0].Id = "Id";
            dataGridView1.Columns[0].Name = "Nome";

            var rows = new List< string[]>();
            foreach(Estado estado in Estado.lista())
            {
              string[] row1 = new string[] { estado.Id.ToString(), estado.Nome };
              rows.Add(row1);
             }

            foreach( string[] rowArray in rows)
            {
              dataGridView1.Rows.Add(rowArray);
            }
           }

         }
        }
       
    

Maneira Intermediária utilizando LinQ para preencher DatagridView.

      
        namespace WindowsFormsApplication  
        {
         public partial class Form1 : Form 
         {
           public Form1()
           {
             InitializeComponent();
           }
  
           private void Form1_load(object sender, EventArgs e)
           {
             var data = from estado in estado.Lista() 
                        order by estado.Nome 
                        select new 
                        {
                          Id = estado.id, 
                          Nome = estado.Nome
                        }

              dataGridView1.Datasource = data.ToList();
           }

         }
        }
       
    

Aplicação Windows - DataGridView

Nesta aula iremos aprender como utilizar o DataGridView, iremos ver para que serve o DataSource e formas diferentes de preencher este componente.

Próximas Aulas:
assinaturaAssine nossa Comunidade

Aplicação Windows - DataGridView

DataGridView é uma tabela onde nós inserimos todos os item que temos e é formado por colunas e linhas.

Um exemplo da utilização do Datagridview é quando temos um formulário para preencher e esse formulário possui as informações de nome, endereço, telefone, rg, etc..Após o preenchimento, criamos uma lista no c# e esta lista será mostrada no componente Datagridview.

O Datagridview utiliza de uma propriedade chamada Datasource, responsável por pegar todas as coleções e mostrá-las na tela.

Para inserir um Datagridview no formulário, basta abrir a caixa de ferramentas Toolbox, localizar o componente e arrastá-lo para o formulário.

Maneira Simples de preencher DatagridView

Vamos preencher o DataGridView no método load do formulário de uma maneira simples, utilizando a propriedade Datasource:

      
        namespace WindowsFormsApplication  
        {
         public partial class Form1 : Form 
         {
           public Form1()
           {
             InitializeComponent();
           }
  
           private void Form1_load(object sender, EventArgs e)
           {
             dataGridView1.DataSource = Estado.lista();
           }

         }
        }
       
    

Para que o DataGridView preencha cada coluna da classe Estado, precisamos fazer uma alteração na classe Estado, criando as propriedades dos atributos Id e Nome, ou seja, inserindo in get e um set :

      
        namespace WindowsFormsApplication
        {
          public class Estado
          {
            public int Id { get;set };
            public string Nome { get;set };
  
          }
        } 
      
    

Maneira Complexa de preencher DatagridView

Podemos preencher o DataGridView escolhendo quais colunas queremos mostrar, de uma maneira mais complexa, utilizando lista de array de string[].

      
        namespace WindowsFormsApplication  
        {
         public partial class Form1 : Form 
         {
           public Form1()
           {
             InitializeComponent();
           }
  
           private void Form1_load(object sender, EventArgs e)
           {

            dataGridView1.ColumnCount = 2;
            dataGridView1.Columns[0].Id = "Id";
            dataGridView1.Columns[0].Name = "Nome";

            var rows = new List< string[]>();
            foreach(Estado estado in Estado.lista())
            {
              string[] row1 = new string[] { estado.Id.ToString(), estado.Nome };
              rows.Add(row1);
             }

            foreach( string[] rowArray in rows)
            {
              dataGridView1.Rows.Add(rowArray);
            }
           }

         }
        }
       
    

Maneira Intermediária utilizando LinQ para preencher DatagridView.

      
        namespace WindowsFormsApplication  
        {
         public partial class Form1 : Form 
         {
           public Form1()
           {
             InitializeComponent();
           }
  
           private void Form1_load(object sender, EventArgs e)
           {
             var data = from estado in estado.Lista() 
                        order by estado.Nome 
                        select new 
                        {
                          Id = estado.id, 
                          Nome = estado.Nome
                        }

              dataGridView1.Datasource = data.ToList();
           }

         }
        }