我试图以某种方式放置一个窗口,使其左上角位于特定 WPF 控件左上角的同一点。
所以我尝试像这样获取控件的屏幕坐标:
PresentationSource source = PresentationSource.FromVisual(ctrl);
Point posFromScreen = ctrl.PointToScreen(new Point(0, 0));
Point targetPoints = source.CompositionTarget.TransformFromDevice.Transform(posFromScreen);
然后我设置了Top
and Left
窗口坐标为targetPoints
.
但我的窗口总是出现在控件的右侧,而不是在左上角与他重叠。
我究竟做错了什么?如何做呢?
写起来应该足够了
var p = ctrl.PointToScreen(new Point());
Left = p.X;
Top = p.Y;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)