仮想化された ListView コントロールを使用してコード行を表示するコード ビューアーを設計しています。
ユーザーが特定の行に移動するリンクをクリックしたときに、ハイライト効果を作成したいと考えています。ターゲット行を強調表示したい。
効果は、「下線」の表示 (および非表示) または半透明のオーバーレイ (マーカー ペンのような) の表示 (および非表示) のいずれかです。実際のグラフィック効果自体は重要ではなく、それは問題ではありません。
これを達成するための最良のアプローチは何ですか?どこから始めればよいかよくわかりません。
技術的な要件として、次のことが必要になる場合があります。
- 反応する適切なイベントを見つける - またはデータバインディングを使用する
- 仮想化されたターゲット アイテムの絶対的な境界四角形を取得します (ただし、ビューに表示されたときにアイテムが使用可能である必要があります)。
- キャンバス効果を上に絶対に配置し、フェードインとフェードアウトします
...理想的には、ビュー モデルのいくつかの状態が変化します。トリガーされたストーリーボードを介して XAML の一部がアニメーション化され、関連する ListViewItem の上に表示 (フェードイン) され、再びアニメーション化されます (フェードアウト)。もちろん、フェードインの前に、要素は関連する ListViewItem の上に正しく配置されている必要があります...