大家好,我有一个关于在 ListView 中绘制行号的问题,就像我在 DataGridView 中所做的那样。我正在使用 Visual Studio 2010。
在我的 DataGridView 中,我使用以下代码绘制行号:
Private Sub SalesDGV_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles SalesDGV.RowPostPaint
'draw the row number
Using b As SolidBrush = New SolidBrush(SalesDGV.RowHeadersDefaultCellStyle.ForeColor)
e.Graphics.DrawString(e.RowIndex + 1, _
SalesDGV.DefaultCellStyle.Font, _
b, _
e.RowBounds.Location.X + 20, _
e.RowBounds.Location.Y + 4)
End Using
End Sub
结果在我的 DataGridView 中:http: //puu.sh/3h4CF.png
我希望我的 ListView 行号与我的 DataGridView 具有完全相同的样式,但似乎 ListView 默认不支持这种样式,我需要一个自定义控件(?)
我知道有些人会建议我改用返回 DataGridView,但我改用 ListView 的原因是因为如果我不填充数据,DataGridView 会给我空白区域,而 ListView 允许我在不填充任何数据的情况下拥有 GridLines。
所以我在这里有两个问题:
- 如何像在 DataGridView 中一样在 ListView 中绘制带有数字的行标题?
- 即使我没有填充任何数据,我也可以在 DataGridView 中显示网格线吗?如果可能,我该如何实现?
谢谢!