gpt4 book ai didi

c# - 拖动后获取 Canvas 子元素的位置。

转载 作者:太空宇宙 更新时间:2023-11-03 16:29:21 24 4
gpt4 key购买 nike

我有一个带有几个 child 的 Canvas,每个 child 都有一个 MouseDragElementBehavior 附加。像这样:

MouseDragElementBehavior drag = new MouseDragElementBehavior();
drag.Attach(ellipse);

我想拖动一个 child 并在拖动后获得那个 child 的新位置,所以我做了这样的事情:

double left = Canvas.GetLeft(ellipse);
double top = Canvas.GetTop(ellipse);

问题是我总是在拖动后获得相同的顶部和左侧值,就好像元素从未被拖动过一样。我怎样才能得到元素的新位置?

最佳答案

我找不到任何关于此行为实际如何工作的有用文档,但我猜它是通过设置边距而不是 Canvas.Left/.Top 来“移动”控件。您是否检查过边距以查看它们是否在变化?设置 Margin 会更有用,因为它会将兼容性扩展到 Canvas 以外的容器(例如 Grid 或 StackPanel)。

关于c# - 拖动后获取 Canvas 子元素的位置。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11317734/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com