当用户点击停用表单上的按钮时,我试图让ToolStrip执行单击按钮的操作。默认行为是,1单击以设置焦点,第二次单击以实际单击按钮。
我想我会在激活的表单中检查Cursor.Position,如果它在一个按钮上,我会在该按钮上调用PerformClick()。
我得到的问题是PointToClient没有返回正确的客户端位置。
toolStrip1.PointToClient(Cursor.Position)
{X = 2417 Y = 661}
IsEmpty: false
X: 2417
Y: 661
按钮的实际位置是
{X = 39 Y = 1 Width = 77 Height = 51} and I'm clicking around the center.
toolStrip1的边界是:
{X = 0 Y = 24 Width = 970 Height = 54}
这个问题是因为我试图在Activated中获取客户位置吗?
之前我曾在其他许多地方使用过它,从来没有遇到任何问题。