Nesta aula iremos aprender como utilizar o DataGridView, iremos ver para que serve o DataSource e formas diferentes de preencher este componente.
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.
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 };
}
}
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);
}
}
}
}
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();
}
}
}
Nesta aula iremos aprender como utilizar o DataGridView, iremos ver para que serve o DataSource e formas diferentes de preencher este componente.
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.
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 };
}
}
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);
}
}
}
}
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();
}
}
}