リストボックス内のアイテムがダブルクリックされたときに視覚効果を作成したいと考えています。これまでのところ、アイテムがマウスに視覚的に接続され、ドロップターゲットに移動できるドラッグアンドドロップ機能があります。その機能から、アイテム コンテナーを取得するのと同じロジックを使用してアイテムをアニメーション化できますが、アイテム コントロールを離れることができません。ListBox からアイテムを削除し、別の場所に視覚的にアニメーション化する方法はありますか? 基本的に、メイン リスト ボックスはカードの手札です。カードがダブルクリックされたときに、手札のリストボックスから捨て札のリストボックスに視覚的に移動したい。現時点では、あるコレクションから別のコレクションにアイテムを移動するロジックは問題ありませんが、このイベントのアニメーションによる視覚的表現が本当に必要です。このようなことを行う方法についてのアイデアや参考文献をいただければ幸いです。
ありがとう、ブランドン
私が試みたことの詳細: 私がまだしっかりと把握していない概念がいくつかあります。ListBox を ItemsControl、リストボックス アイテムである FrameworkElement、および ListBox アイテムに関連付けられたデータ オブジェクトとして渡すメソッドがあります (一部は不要な場合があります)。私がやろうとしたのは、キャンバスであるListBoxItemのFindVisualChildでした。私はそれを行うことができます。私の考えでは、キャンバスをキャンバスまたはビットマップとして何らかの方法で複製し、同じ場所にあるページの子の子に追加し、ListBoxItem を ListBox から削除し、クローンを破棄にアニメーション化したいと考えていました。パイル。アニメーションが完了すると、クローンは削除または非表示になり、そのオブジェクトが廃棄物の山コレクションに追加されると、クローンを効果的に置き換えることができます。
これに関する私の問題は、装飾レイヤーなどを使用してこれを行う簡単な方法があるように感じることです。また、ビジュアル ツリーのさらに上の要素のまったく同じ位置にクローンを配置する方法もわかりません。私はそれに取り組み、他のアプローチを研究し続けるつもりです。誰かがこれについての洞察を共有してくれることを願っています.