Se você está desenvolvendo uma aplicação Windows Forms em C# e utiliza o controle DataGridView
, pode ser útil numerar as linhas para facilitar a visualização e a navegação dos dados. Neste post, vamos explorar como numerar linhas do dataGridView em C#.
Passo a passo para numerar linhas no dataGridView
- Criar um novo projeto
- Abra o Visual Studio e crie um novo projeto Windows Forms.
- Abra o Visual Studio e crie um novo projeto Windows Forms.
- Adicionar um DataGridView
- Arraste e solte um controle
DataGridView
na sua forma a partir da Toolbox; - Ajuste o tamanho conforme necessário.
- Arraste e solte um controle
- Preencher o DataGridView com dados
- Você pode preencher o
DataGridView
manualmente ou por meio de uma fonte de dados. Para este exemplo, usaremos umDataTable
como fonte.
- Você pode preencher o
- Adicionar uma coluna para numeração
- Adicione uma nova coluna ao
DataGridView
que será usada para exibir os números das linhas.
- Adicione uma nova coluna ao
- Implementar a lógica para numeração
- Utilize o evento
CellFormatting
ouRowPostPaint
para numerar as linhas. Aqui, optaremos peloRowPostPaint
, que é mais apropriado para este caso.
- Utilize o evento
Exemplo de código
Aqui está um exemplo de como implementar a numeração de linhas:
using System;
using System.Data;
using System.Drawing;
using System.Windows.Forms;
namespace NumeracaoDataGridView
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
LoadData();
}
private void LoadData()
{
DataTable dt = new DataTable();
dt.Columns.Add("Nome");
dt.Columns.Add("Idade");
// Adicionando dados fictícios
dt.Rows.Add("Alice", 25);
dt.Rows.Add("Bob", 30);
dt.Rows.Add("Charlie", 35);
dataGridView1.DataSource = dt;
// Adicionando uma coluna para a numeração
DataGridViewColumn numberColumn = new DataGridViewTextBoxColumn();
numberColumn.HeaderText = "Nº";
numberColumn.Width = 50;
numberColumn.ReadOnly = true;
dataGridView1.Columns.Insert(0, numberColumn);
}
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
// Numerando as linhas
using (SolidBrush b = new SolidBrush(dataGridView1.RowHeadersDefaultCellStyle.ForeColor))
{
e.Graphics.DrawString((e.RowIndex + 1).ToString(),
dataGridView1.RowHeadersDefaultCellStyle.Font,
b,
e.RowBounds.Location.X + 15,
e.RowBounds.Location.Y + 4);
}
}
private void Form1_Load(object sender, EventArgs e)
{
// Associar o evento RowPostPaint
dataGridView1.RowPostPaint += new DataGridViewRowPostPaintEventHandler(dataGridView1_RowPostPaint);
}
}
}
Explicação do código
- LoadData: Preenche o
DataGridView
com dados fictícios e adiciona uma coluna para a numeração; - dataGridView1_RowPostPaint: Este evento é chamado após a pintura de cada linha. Ele usa a função
DrawString
para desenhar o número da linha na célula do cabeçalho da linha; - Form1_Load: Aqui, você associa o evento
RowPostPaint
aoDataGridView
.
Outro exemplo prático
Para numerar as linhas de um componente dataGridView e mostrar as numerações do 1 até a quantidade total de registros nas Rows, insira o método abaixo em seu código e informe o parâmetro do tipo DataGridView:
public void AutoNumberRowsForGridView(DataGridView dataGridView) {
if (dataGridView != null) {
for (int count = 0; (count <= (dataGridView.Rows.Count - 1)); count++) {
dataGridView.Rows[count].HeaderCell.Value = string.Format((count + 1).ToString(), "0");
}
}
Numerar as linhas de um DataGridView
em C# é uma tarefa simples que pode melhorar significativamente a usabilidade da sua aplicação.
Ao seguir os passos acima, você poderá adicionar facilmente uma coluna de numeração e personalizar a exibição conforme necessário. Essa abordagem garante que as linhas sejam numeradas automaticamente, mesmo que os dados sejam alterados dinamicamente.
CONHEÇA O CURSO COMPLETO DE C# COM + DE 100 AULAS PRÁTICAS. Tenha acesso vitalício e certificado de conclusão.
CLIQUE NA IMAGEM ABAIXO E CONFIRA MAIS DETALHES:
Dúvidas ou sugestões sobre como numerar linhas do dataGridView em C#? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits
Quer receber GRÁTIS o e-book "Como Formatar um Computador em 5 Minutos"?
Sobre o Autor
0 Comentários