I am sorry, I was a bit unclear (I wasnt sure if it is bottom-alligned or bottom-docked or whatever so I left out that part).
But, nevertheless I figured it out. It seems that the CellPainting
event isnt constrained to the cell boundaries so you can simply move the cell bounding rectangle, like this:
Rectangle^ newRect = gcnew Rectangle(
e->CellBounds.X,
DataGridView->Bounds.Bottom-e->CellBounds.Y, // this is the moving part
e->CellBounds.Width,
e->CellBounds.Height
);
There are some minor modifications to be considered (if the bottom scrollbar is visible, the DataGridView
boundaries) but the code captures the point.
Looking at the problem from a distance sure does the trick ;)
Edit: Yes indeed, this draws the cells bottoms up BUT it also makes some funky effects on vertical/horizontal scrolling and window focus change. And yes, no header cells. Back to the drawing board.