2010-11-21 5 views
2

シナリオ:MVVMを使用するWindows Phone 7アプリケーション。私は私のViewModelからアイテムのコレクションにバインドされているListBoxを持っています。このビューの主な用途は、ユーザーがアイテムを好みに合わせて並べ替えることができるようにすることです。WP7 ListBoxユーザーがアイテムを注文する方法

これをWP7に実装するにはどうすればよいですか?私がこれをやりたいのは、単にユーザーがアイテムを自分が望む位置にドラッグできるようにすることです。そのようなジェスチャーの組み込みのサポートはありますか? (私は何も見つけることができませんでした)。

答えて

1

AnthonyWJonesが述べたように、GesureListenerはおそらくあなたが探しているものです。アイテムの順序が変更されたときにアイテムがスムーズにアニメートされるように、リストにFluidMoveBehaviorを使用できることを追加したかっただけです。私の意見では、ユーザーエクスペリエンスが大幅に改善されています。

流体移動の挙動は次のように、ちょうどあなたの既存のリストに「プラグイン」するために十分に簡単です:

<Style TargetType="ListBox" x:Key="FluidListBox"> 
    <Setter Property="ItemsPanel"> 
     <Setter.Value> 
      <ItemsPanelTemplate> 
       <StackPanel> 
        <i:Interaction.Behaviors> 
         <ei:FluidMoveBehavior AppliesTo="Children" Tag="DataContext"> 
          <ei:FluidMoveBehavior.EaseY> 
           <BackEase EasingMode="EaseInOut" Amplitude="0.5"/> 
          </ei:FluidMoveBehavior.EaseY> 
          <ei:FluidMoveBehavior.EaseX> 
           <BackEase EasingMode="EaseInOut" Amplitude="0.5"/> 
          </ei:FluidMoveBehavior.EaseX> 
         </ei:FluidMoveBehavior> 
        </i:Interaction.Behaviors> 
       </StackPanel> 
      </ItemsPanelTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 
関連する問題