如何实现瓷砖重新排列,如Windows Phone主页

时间:2012-12-08 14:39:28

标签: windows-phone-7 windows-phone

我在我的应用中使用了HubTile网格,并且我希望能够重新排列(也就是通过点按并重新排序项目),就像Windows Phone主页的工作方式一样。 我遇到过类似的东西 - A Gesture-Driven Windows Phone Todo List,但我认为它不易使用。是否有某种开源库或商业产品做得那么好。因为截止日期临近所以我真的不想自己动手,我需要尽可能多地利用

1 个答案:

答案 0 :(得分:1)

最好的方法是使用WrapPanel。如果将Hub Tiles添加到WrapPanel,它将提供与Windows Phone主页相同的效果。 以下链接应该可以帮助您了解如何进行WrapPanel。

http://www.windowsphonegeek.com/articles/WP7-WrapPanel-in-depth

http://www.kotancode.com/2010/12/29/wp7-presenting-listbox-items-inside-a-wrappanel/

完成后,您可以使用触摸操作来移动Hub Tiles。

http://blogs.msdn.com/b/mikeormond/archive/2010/07/08/enabling-touch-manipulations-on-windows-phone.aspx

首先,将所有Hub Tiles分组为List<>或者ObservableCollection<>。 (我建议使用ObservableCollection)

使用触摸操作移动Hub Tile。根据Hub Tile的位置(完成触摸操作时),您可以重新排列ObservableCollection中Hub Tiles的顺序。更新ListBox。

我的意思是,如果HubTile [3]被拖动并移动到列表框的顶部,在List<>中,将HubTile [3]的索引更改为HubTile [0],并更新HubTiles其余部分的索引。刷新ListBox时,应该重新排列HubTiles。

您可以为动画创建StoryBoard。