使用Toolkit手势拖动在横向方向上很疯狂



在WP8应用程序中,我有一个ListBox绑定到一个ItemsSource与Grid,因为它是ItemsPanelTemplate。根据用户的选择,网格的布局可能每次都不同(不同的行/列数),我正在使用一个helper类,以便将ItemsPanelTemplate网格的行和列定义绑定到从数据库读取的值。

用户可以在应用程序中添加项目,并将每个项目分配给ListBox中的网格单元格。每个项目都可以"坐在"多个网格中(多对多关系),这导致我使用另一个绑定助手类,以便在ListBox.ItemContainerStyle中设置Grid.RowGrid.Column附加属性的绑定,绑定到ItemsSource类的属性。

另一个要求是当Rows.Count >= Columns.Count时,应用程序在纵向方向,当列更多时,应用程序在横向方向。

我还使用Toolkit手势进行拖放操作。

所讨论的问题是横向方向上的拖动问题。虽然在纵向上一切都很好,但在横向上,列表框变得疯狂了。拖拽发生在不同的单元格上,那些实际被拖拽的单元格甚至没有引发手势事件(DragStarted, DragDelta, DragCompleted)。

我在这里迷路了,不知道问题是什么,也不知道如何解决。

请开灯。

这里有一个例子来说明这个问题。

编辑

哎呀,这是工具包上的GestureListener的错误。它不尊重横向,并将ui元素视为在纵向中渲染。

使用可以正常工作的操纵事件。我能拿回我的50赏金点数吗?: P

如果不是手势监听器,而是操纵事件,那么这里有几个很好的问题:

使用MVVM在windows phone上从列表拖放到画布

ScrollViewer中的移动对象

最新更新