Como criar uma tabela dinâmica com ASP.NET
Quando precisamos criar um formulário e não sabemos quantos text boxes vamos utilizar, quantas linhas a tabela irá ter ou outros controles que serão necessários no formulário nós precisamos criar um tabela dinâmica. Como exemplo um formulário onde o usuário irá digitar o CPF dos alunos de uma determina sala de aula, quantos text boxes eu vou utilizar? Não sei, depende da quantidade de registros no banco. Com ASP.NET é fácil fazer este tipo de formulário, basta saber a quantidade de alunos na sala e gerar uma tabela dinâmica utilizando HTML server controls, veja um exemplo abaixo de como criar uma tabela dinâmica com ASP.NET.
protected void Page_Load(object sender, EventArgs e)
{
// Cria um novo objeto HtmlTable.
HtmlTable table1 = new HtmlTable();
// Propriedades de formatação.
table1.Border = 1;
table1.CellPadding = 3;
table1.CellSpacing = 3;
table1.BorderColor = "red";
// InĂcio do conteĂşdo da tabela.
HtmlTableRow row;
HtmlTableCell cell;
for (int i = 1; i <= 6; i++)
{
// Cria uma nova linha e adiciona o background
row = new HtmlTableRow();
row.BgColor = (i%2 == 0 ? "lightyellow" : "lightcyan");
for (int j = 1; j <= 4; j++)
{
//Cria uma célula e adiciona um texto..
cell = new HtmlTableCell();
cell.InnerHtml = "Linha: " + i +
"<br />Célula: " + j;
// Adiciona a celula na tabela.
row.Cells.Add(cell);
}
// Adiciona a linha na tabela.
table1.Rows.Add(row);
}
// Adiciona a tabela na página.
Controls.Add(table1);
}
No exemplo acima foram criados dois loops. O loop externo cria as linhas. O loop interno cria as células, para cada linha e adicionado uma a célula na linha atual, quando o loop interno encerra, é adiciona a linha inteira para a tabela. O passo final ocorre quando o loop externo é encerrado. Neste ponto o código adiciona a tabela completa na pagina.
Veja na figura o resultado.
Fabio Galante Mans
fabio.galante@mans.com.br
www.aspneti.com
fabio.galante@netitc.com.br
www.netitc.com.br – Hospedagem para desenvolvedores