我正在玩一个简单的WPF应用程序.其中一部分包括一个包含多个控件的网格.使用LayoutTransform和RotateTransform旋转网格.我需要相对于网格的左上角进行鼠标点击的坐标,并考虑旋转.
为了清楚起见,假设我在网格中有一个绘图表面,并且没有应用任何变换.然后我点击位置X = 20,Y = 10并在该点处在绘图表面上放置一个点.如果网格现在旋转30度并且我点击点(也通过旋转移动),则点击位置仍应为X = 20,Y = 10.
MouseEventArgs有一个GetPosition方法,它接受一个UIElement.它返回鼠标事件相对于指定元素的位置.因此,如果要将鼠标单击转换为网格坐标,请将该网格传递给GetPosition方法.
| 归档时间: |
|
| 查看次数: |
299 次 |
| 最近记录: |