DataGridView格式化

时间:2010-03-18 08:53:34

标签: .net vb.net winforms datagridview

我有一个带有“代码”和“名称”列的DGV。

取决于代码的长度,我想在“名称”单元格中添加制表,以显示数据的结构。

就像这张照片中的那样:

https://lh3.ggpht.com/_DoguEKXT64k/S6Hoq7Eu7sI/AAAAAAAABRs/wwjf7TXTLmk/dgv.jpg

如何做得更好?我认为有一种更好的方法,然后循环所有行并在名称前添加空格,对吧?

1 个答案:

答案 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