有时为了界面设计需要或者美观,想要给DataGridView的列头做成过渡色
下面这个类可以实现这一需求
使用方法,在form的load里面添加: AddHandler dv.Paint, AddressOf DataGridView1_Paint,
其中dv是DataGridView控件的名称。
Public Sub dv_CellPainting(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs)
If e.RowIndex = -1 Then
Dim dv As DataGridView = sender
Dim w As Integer = dv.DisplayRectangle.Width
Dim im As Image = New Bitmap(w, dv.ColumnHeadersHeight + 1)
Dim g As Graphics = Graphics.FromImage(im)
Dim l As New Drawing2D.LinearGradientBrush(New Point(0, 0), New Point(im.Width, 0), Color.FromArgb(80, 80, 80), Color.Silver)
g.FillRectangle(l, New Rectangle(0, 0,