当控件可能位于其他控件(如面板)内部时,是否有任何方法可以检索控件在表单中的位置?
该控件的 Left 和 Top 属性只提供了它在其父控件中的位置,但是如果我的控件位于五个嵌套面板内,并且我需要它在窗体上的位置,该怎么办?
快速示例:
按钮 btnA 位于面板 pnlB 内的坐标 (10,10) 上。
面板 pnlB 位于窗体 frmC 内的坐标 (15,15) 上。
我想要 btnA 在 frmC 上的位置,即 (25,25)。
我可以得到这个位置吗?
我一般会结合PointToScreen
and PointToClient
:
Point locationOnForm = control.FindForm().PointToClient(
control.Parent.PointToScreen(control.Location));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)