An object-oriented programming language developed by Microsoft that can be used in .NET.
Keying off! That's a new one on me:-)
In the end I just got the various column widths: Dvg1.Columns(x).width &
the Dgv.Left position + Dvg.RowHeaderWidth
So the Left position of the 1st column (Px1) in x is Dgv.Left + Dvg.RowHeaderWidth
The position of the second column is
Px2 = Px1 + Dvg1.Columns(0).width
Px3 = Px2 + Dvg1.Columns(1).width
etc
The y location of the textboxes is Dgv1.top - 22 (To sit the TextBox just above the Column Header
Then called this in the Dgv_Resize event
This still works when there are no rows in the Dgv
It seems ok with 18 columns