DataGridViewCellPaintingEventHandler Delegate
Represents the method that will handle the CellPainting event of a DataGridView.
Assembly: System.Windows.Forms (in System.Windows.Forms.dll)
'Declaration Public Delegate Sub DataGridViewCellPaintingEventHandler ( _ sender As Object, _ e As DataGridViewCellPaintingEventArgs _ ) 'Usage Dim instance As New DataGridViewCellPaintingEventHandler(AddressOf HandlerMethod)
Parameters
- sender
- Type: System.Object
The source of the event.
- e
- Type: System.Windows.Forms.DataGridViewCellPaintingEventArgs
A DataGridViewCellPaintingEventArgs that contains the event data.
When you create a DataGridViewCellPaintingEventHandler delegate, you identify the method that will handle the event. To associate the event with your event handler, add an instance of the delegate to the event. The event handler is called whenever the event occurs, unless you remove the delegate. For more information about event-handler delegates, see Events and Delegates.
The following example illustrates the use of this event to customize the appearance of all cells in a particular column.
This code is part of a larger example available in How to: Customize the Appearance of Cells in the Windows Forms DataGridView Control.
Private Sub dataGridView1_CellPainting(ByVal sender As Object, _ ByVal e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) _ Handles dataGridView1.CellPainting If Me.dataGridView1.Columns("ContactName").Index = _ e.ColumnIndex AndAlso e.RowIndex >= 0 Then Dim newRect As New Rectangle(e.CellBounds.X + 1, e.CellBounds.Y + 1, _ e.CellBounds.Width - 4, e.CellBounds.Height - 4) Dim backColorBrush As New SolidBrush(e.CellStyle.BackColor) Dim gridBrush As New SolidBrush(Me.dataGridView1.GridColor) Dim gridLinePen As New Pen(gridBrush) Try ' Erase the cell. e.Graphics.FillRectangle(backColorBrush, e.CellBounds) ' Draw the grid lines (only the right and bottom lines; ' DataGridView takes care of the others). e.Graphics.DrawLine(gridLinePen, e.CellBounds.Left, _ e.CellBounds.Bottom - 1, e.CellBounds.Right - 1, _ e.CellBounds.Bottom - 1) e.Graphics.DrawLine(gridLinePen, e.CellBounds.Right - 1, _ e.CellBounds.Top, e.CellBounds.Right - 1, _ e.CellBounds.Bottom) ' Draw the inset highlight box. e.Graphics.DrawRectangle(Pens.Blue, newRect) ' Draw the text content of the cell, ignoring alignment. If (e.Value IsNot Nothing) Then e.Graphics.DrawString(CStr(e.Value), e.CellStyle.Font, _ Brushes.Crimson, e.CellBounds.X + 2, e.CellBounds.Y + 2, _ StringFormat.GenericDefault) End If e.Handled = True Finally gridLinePen.Dispose() gridBrush.Dispose() backColorBrush.Dispose() End Try End If End Sub
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.