我编写了一个Windows Store类型的应用程序,您可以在两个网格(onField和Sideline)之间来回拖动Player对象 . 工作得很好,但你只能通过(1)点击球员(2)轻击目标位置 . 然后我决定我也想让用户拖动玩家 . 我尝试向玩家添加一个拇指......考虑并拒绝使用Canvas的可能性 .
所有迹象都指向ListView或Gridview解决方案,因此我尝试将onField和Sideline网格更改为GridViews,但无法看到任何方法来获得我想要的位置布局大小 . 最后,我在大布局网格的每个单元格中放置了一个Gridview . 这有效,但代价是在位置之间移动玩家的延迟以及在某些分类操作中滞后 . 此外,拖动操作仅在初始拖动方向向下(???)时才起作用 .
TLDR:GridView和ListView解决方案似乎低于我的网格到网格拖放需求 .
1 回答
在WinRT xaml框架中,只有GridView和ListView支持拖放操作 . 我不知道为什么,但事实就是如此 .
这不会阻止你创建自己的,但你真的必须从头开始这是一个痛苦的屁股,因为你不能使用AllowDrop属性等 .
你可能有一些运气将Silverlight Drag and Drop library移植到WinRT,但它已经尝试了's not something I' .