Ответ 1
Вы не можете найти точку для ячейки DGV, потому что ячейки занимают прямоугольную область в DGV. Однако вы можете найти эту область, используя метод DataGridView.GetCellDisplayRectangle(). Он возвращает Rectangle
для области отображения ячейки DGV, заданной столбцами ячейки и индексами строк. Если вам действительно нужна точка, вы можете легко использовать Rectangle
для построения точек для любого из Rectangle
четырех углов.
// Get Rectangle for second column in second row.
var cellRectangle = dataGridView1.GetCellDisplayRectangle(1, 1, true);
// Can create Points using the Rectangle if you want.
Console.WriteLine("Top Left x:{0}\t y:{1}", cellRectangle.Left, cellRectangle.Top);
Console.WriteLine("Bottom Right x:{0}\t y:{1}", cellRectangle.Right, cellRectangle.Bottom);
Но я согласен с вашими комментаторами вопросов; было бы лучше создать пользовательский DataGridViewColumn и разместить там свой TextBox и Button. Вот пример для этого элемента управления DateTimePicker: