Agrupar filas en DataGridView
en DataGridView coloque el siguiente código en
dgvProduct_CellFormatting Event
If e.RowIndex > 0 And e.ColumnIndex = 0 Then
If dgvProduct.Item(0, e.RowIndex - 1).Value = e.Value Then
e.Value = ""
ElseIf e.RowIndex < dgvProduct.Rows.Count - 1 Then
dgvProduct.Rows(e.RowIndex).DefaultCellStyle.BackColor = Color.White
End If
End If
¡Todo listo!
Disfruta
Podría intentar usar la funcionalidad de la propiedad MergeCells de MSFlexGrid de combinación de celdas verticales en lugar de agrupación de filas como se explica en este artículo Agrupación de DataGridView en C#/VB.NET:dos recetas. En este ejemplo, las filas que pertenecen a un grupo se unen visualmente usando celdas combinadas verticalmente, en lugar de usar filas de grupos horizontales clásicas.
protected override void OnCellPainting(DataGridViewCellPaintingEventArgs args)
{
base.OnCellPainting(args);
args.AdvancedBorderStyle.Bottom =
DataGridViewAdvancedCellBorderStyle.None;
// Ignore column and row headers and first row
if (args.RowIndex < 1 || args.ColumnIndex < 0)
return;
if (IsRepeatedCellValue(args.RowIndex, args.ColumnIndex))
{
args.AdvancedBorderStyle.Top =
DataGridViewAdvancedCellBorderStyle.None;
}
else
{
args.AdvancedBorderStyle.Top = AdvancedCellBorderStyle.Top;
}
}