我试图以某种方式放置一个窗口,使其左上角将位于特定 WPF 控件左上角的同一点。
所以我尝试像这样获取控件的屏幕坐标:
PresentationSource source = PresentationSource.FromVisual(ctrl);
Point posFromScreen = ctrl.PointToScreen(new Point(0, 0));
Point targetPoints = source.CompositionTarget.TransformFromDevice.Transform(posFromScreen);
然后我将窗口的Top
和坐标设置为。
但是我的窗口总是出现在控件的右侧,而不是在左上角与他重叠。 Left
targetPoints
我究竟做错了什么?怎么做到呢?