我有一个带有“代码”和“名称”列的DGV。
取决于代码的长度,我想在“名称”单元格中添加制表,以显示数据的结构。
就像这张照片中的那样:
如何做得更好?我认为有一种更好的方法,然后循环所有行并在名称前添加空格,对吧?
答案 0 :(得分:3)
您可以挂钩到DataGridView.CellFormatting-Event。这将在需要时为每个单元格调用。
编辑:这是Vadim在评论中发布的代码的变体:
Public Overrides Sub DGVCellFormatting(ByVal e As DataGridViewCellFormattingEventArgs)
If DGVMain.Columns(e.ColumnIndex).Name = "Name" Then
Dim cellValue As String = DGVMain.Rows(e.RowIndex).Cells("Code").Value.ToString()
e.Value = cellValue.PadLeft(3 * (cellValue.Length - 3))
End If
End Sub