2

我一直在寻找一个拖放列表框,但我想没有这样的默认控件。一些搜索给了我,Jason 的博客,他在其中非常优雅地完成了它。在他编写的代码中,每个列表框项的右端都有一个拖放处理程序。你按在处理程序上并向上或向下移动项目。我正在尝试在长按该项目时实现相同的功能..

他使用了一个拖拽拦截器,它基本上是一个画布,它位于列表框的顶部以捕获列表框项操作事件。如果我想对列表框项的保持事件进行相同的操作,我该如何触发它?

这就是我将事件链接到拖动拦截器的方式。我如何在列表框项目的保留上调用 Manipulation Started?还是有其他方法可以做到这一点?

this.dragInterceptor.ManipulationStarted += this.dragInterceptor_ManipulationStarted;
this.dragInterceptor.ManipulationDelta += this.dragInterceptor_ManipulationDelta;
this.dragInterceptor.ManipulationCompleted += this.dragInterceptor_ManipulationCompleted;
this.dragInterceptor.Hold += dragInterceptor_Hold;
4

2 回答 2

1

我通过从 mainpage.xaml 发送参数(对象发送者和 ManipulationStartedEventArgs)触发了重新排序列表框的操作事件。

于 2013-09-23T10:31:38.720 回答
1

一旦触发了保持事件,您是否尝试过仅添加操作事件处理程序?或者添加一个设置Hold和清除的标志,ManipulationCompleted以测试在其他操作事件中运行主代码之前是否完成了保持。

于 2013-09-17T13:32:14.953 回答