如何获取 WPF 应用程序中面板(Canvas、stackpanel 等)所在的客户端坐标?

发布于 2024-11-06 10:40:09 字数 131 浏览 5 评论 0原文

我需要以编程方式获取面板(例如堆栈面板)所在的客户端坐标。使用 Windows API 时,按钮具有左上和右下坐标,用于确定其在其所在窗口中的位置。如何获取 WPF 窗口中堆栈面板的这些坐标?

谢谢你的帮助,

约翰。

I need to programatically obtain the client coordinates where a panel (stackpanel for instance) is located. When using the Windows API, a button has a TopLeft and BottomRight coordinate that determines its location within the window in which it resides. How do I obtain those coordinates for a stackpanel in a WPF window ?

Thank you for your help,

John.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

野生奥特曼 2024-11-13 10:40:09

您可以调用 TransformToVisual() 来获取相对于您可以使用容器(框架/窗口)的其他元素的 GeneralTransform

GeneralTransform gt = stackPanel1.TransformToVisual(parentWindow);         
Point p = gt.Transform(new Point(0, 0));

You can call TransformToVisual() which gets a GeneralTransform relative to some other element for which you can use your container (frame/ window)

GeneralTransform gt = stackPanel1.TransformToVisual(parentWindow);         
Point p = gt.Transform(new Point(0, 0));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文