windowsforms-devexpress-dot-xtragrid-dot-gridcontrol-02980f69.md
A DirectX-compatible method that replaces the standard Control.Paint method.
Namespace : DevExpress.XtraGrid
Assembly : DevExpress.XtraGrid.v25.2.dll
NuGet Packages : DevExpress.Win.Grid, DevExpress.Win.Navigation
public event PaintExEventHandler PaintEx
Public Event PaintEx As PaintExEventHandler
The PaintEx event's data class is DevExpress.XtraGrid.PaintExEventArgs.
When handling the PaintEx event, use the DirectX-compatible API accessible through the e.Cache field rather then the standard e.Graphics API.
This example draws a thick border around a grid cell under the mouse pointer.
private void GridControl_PaintEx(object sender, DevExpress.XtraGrid.PaintExEventArgs e) {
DrawHotTrackedCell(e.Cache);
}
private void DrawHotTrackedCell(GraphicsCache cache) {
Rectangle bounds = GetCellBounds(HotTrackedCell);
cache.DrawRectangle(new Pen(Brushes.Black, _BorderWidth), bounds);
}
Private Sub GridControl_PaintEx(ByVal sender As Object, ByVal e As DevExpress.XtraGrid.PaintExEventArgs)
DrawHotTrackedCell(e.Cache)
End Sub
Private Sub DrawHotTrackedCell(ByVal cache As GraphicsCache)
Dim bounds As Rectangle = GetCellBounds(HotTrackedCell)
cache.DrawRectangle(New Pen(Brushes.Black, _BorderWidth), bounds)
End Sub
The following code snippets (auto-collected from DevExpress Examples) contain references to the PaintEx event.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.
_GridView = gridView;
gridView.GridControl.PaintEx += GridControl_PaintEx;
}
winforms-grid-draw-thick-cell-border-directx/CS/Form1.cs#L45
_View = view;
view.GridControl.PaintEx += GridControl_PaintEx;
view.MouseMove += new MouseEventHandler(view_MouseMove);
winforms-grid-hide-vertical-lines-between-certain-columns/CS/E3647/ColumnLineHelper.cs#L44
grid = gridView.GridControl;
grid.PaintEx += Grid_PaintEx;
columnList = new List<GridColumn>();
winforms-grid-display-custom-rows/CS/CustomRowInGrid/CustomRowInGrid/BlankItem.cs#L26
View = view;
view.GridControl.PaintEx += GridControl_PaintEx;
View.ShowingEditor+=new CancelEventHandler(View_ShowingEditor);
_GridView = gridView
AddHandler gridView.GridControl.PaintEx, AddressOf GridControl_PaintEx
End Sub
winforms-grid-draw-thick-cell-border-directx/VB/Form1.vb#L42
_View = view
AddHandler view.GridControl.PaintEx, AddressOf GridControl_PaintEx
AddHandler view.MouseMove, AddressOf view_MouseMove
winforms-grid-hide-vertical-lines-between-certain-columns/VB/E3647/ColumnLineHelper.vb#L44
grid = gridView.GridControl
AddHandler grid.PaintEx, AddressOf Grid_PaintEx
columnList = New List(Of GridColumn)()
winforms-grid-display-custom-rows/VB/CustomRowInGrid/BlankItem.vb#L23
Me.View = view
AddHandler view.GridControl.PaintEx, AddressOf GridControl_PaintEx
AddHandler Me.View.ShowingEditor, AddressOf View_ShowingEditor
See Also