我在页面上有两个控件,包含画布。我有"组件" (它们本身就是UserControls)可以通过处理操作事件(开始,增量和完成)在每个画布上移动。
我希望的功能是能够在画布之间移动组件,只需将它们从一个画布拖放到另一个画布即可。
我已经设置了#34; CanDrag"组件的属性为false,以允许画布上的操作事件正常工作。
为了检测用户何时想要在画布之间拖放控件,我正在处理" PointerExited "画布的事件。在那个处理程序中,我翻转了#34; CanDrag"组件的属性为true。然而,仅仅这一点似乎不足以“切换”#34;从操作到控件上的拖放操作。
我找到了 UIElement.StartDragAsync()(下面链接)的文档,这似乎是我需要在画布的 PointerExited 事件中调用的内容,但它需要一个 PointerPoint ,它似乎只能从 PointerEventArgs 和 PointerRoutedEventArgs 获得。有没有办法从 ManipulationDelta 事件处理程序内部访问 PointerPoint 本身(而不仅仅是位置)?
有没有办法做到这一点,无缝地足以让"拖放"和画布中的操作一样流畅(除了简单地按住并在画布之间移动指针之外,用户不需要采取任何其他操作)?
也许"过渡"拖放操作不是实现所需功能的正确方法吗?
注意: