如何在Winforms Datagridview中的单元格的实际矩形而不是相对的GetCellDisplayRectangle()

时间:2017-08-02 08:56:11

标签: c# winforms datagridview

生病只是为了节省一些时间,因为这可能很容易做到:

我正在使用C#,Winforms。

如何在datagridview中获取单元格的实际X,Y,宽度,高度(矩形),如果未显示单元格,它也必须有效。

dataGridView.GetCellDisplayRectangle()仅返回完全或部分显示的单元格的坐标,并且仅返回与datagridview滚动位置相关的坐标。

我想检索datagridview中单元格的绝对位置,相对于它们在datagridview中的位置(不是屏幕位置而不是datagridview滚动视图位置)

我希望您能理解我的问题。

最诚挚的问候, 尤金。

1 个答案:

答案 0 :(得分:0)

没有实现的方法来检索datagridview中的单元格绝对位置,而无需对datagridviewcell进行子类化或对每行高度和宽度进行大量计算,直到我们到达我们想要的单元格,这也必须考虑到其所有者列之前的列是否可见,并且其上方的所有行都是可见的。

因此,这里显示的解决方案是不可行的,因为它们的性能非常昂贵,具体取决于datagridview行和列数,在我的情况下,两者都有很多。

PS:还有其他更复杂的方法来获得我想要的东西,但他们并不真正适合这个问题。