1

アプリで HubTile のグリッドを使用していますが、Windows Phone のホームページと同じようにタイルを再配置 (つまり、タップ アンド ホールドでアイテムを再配置) できるようにしたいと考えています。A Gesture-Driven Windows Phone Todo Listに少し似たものに出くわしましたが、すぐに使用できるとは思いません。それをうまく行うオープンソースライブラリまたは商用製品はありますか。締め切りが近づいており、できる限り活用する必要があるため、自分でロールバックしたくありません

4

1 に答える 1

1

最善の方法は、WrapPanel を使用することです。ハブ タイルを 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/

それが完了したら、タッチ操作を使用してハブ タイルを移動できます。

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

まず、すべてのハブ タイルを List<> または ObservableCollection<> にグループ化します。(ObservableCollection を使用することをお勧めします)

タッチ操作を使用してハブ タイルを移動します。ハブ タイルの位置 (タッチ操作が行われたとき) に基づいて、ObservableCollection 内のハブ タイルの順序を並べ替えることができます。リスト ボックスを更新します。

つまり、HubTile[3] がリストボックスの一番上にドラッグされて移動された場合、List<> で、HubTile[3] のインデックスを HubTile[0] に変更し、残りのインデックスを更新します。 HubTiles の。ListBox を更新すると、HubTiles が再配置されます。

アニメーション用の StoryBoard を作成できます。

于 2012-12-09T07:25:09.243 に答える