1、获取鼠标在控件中的坐标
//在Mouse相关的事件中的方式
void item_MouseDown(object sender, MouseButtonEventArgs e)
{
Point point = e.GetPosition(canvas);
}
//或者Mouse的静态方法GetPosition() 获取与指定元素相对的鼠标位置=>等同于上面
Point point = Mouse.GetPosition(canvas);
2、获取控件相对于另一控件的坐标
//将相对于此元素的某个点转换至相对于指定元素的坐标中
void item_MouseDown(object sender, MouseButtonEventArgs e)
{
Rectangle rectangle =sender as Rectangle;
Point point = rectangle.TranslatePoint(new Point(),canvas);
}
3、获取控件在Window中的坐标
Window window = Window.GetWindow(canvas);
Point point = canvas.TransformToAncestor(window).Transform(new Point(0, 0));
4、获取鼠标相对窗体位置
Point mousePostion = this.PointToScreen(new Point(this.ActualWidth, this.ActualHeight));
参考:https://blog.csdn.net/technologyleader/article/details/108077501