私は WPF でアニメーションを作成しようとしていますが、どこにすべてを配置するかについてかなり混乱しています.自分自身を描くように、成長する円が必要です。
そうするために、うまく設計された円があります (下にぼやけたストロークの円がある 1 つのストロークの円) 次に、StrokeDashArray を使用した別の円があります。この円を最初の円の opacityMask として使用し、StrokeDashArray をアニメーション化して円を明らかにする予定です。
私は遊んでいて、StrokeDashArray を [0, 100] から [50 100] に変更することができ、円を覆う成長する線を取得します (0 100 と 50 100 がどこから来たのか本当にわかりません..見栄えがするまで試しました。
だから今私の問題は、ものをどこに配布するかです。
これまでの私のコードは次のようになります。
<UserControl bla bla bla bla>
<!-- The mask that should be animated -- >
<Ellipse Name="Mask" Stroke="White"StrokeThickness="13" StrokeDashArray="10 100"/>
<!-- StrokeDashArray should be animated from "0 100" to "50 100" -->
<!-- The Blurry shadow of the line -->
<Ellipse Name="blurry" Stroke="#FF7CA2CE" StrokeThickness="5">
<Ellipse.Effect>
<BlurEffect/>
</Ellipse.Effect>
<Ellipse.OpacityMask>
<VisualBrush Visual="{Binding ElementName=Mask}"/>
</Ellipse.OpacityMask>
</Ellipse>
<!-- The line itself -->
<Ellipse Name="core" Stroke="Blue" StrokeThickness="1">
<Ellipse.OpacityMask>
<VisualBrush Visual="{Binding ElementName=Mask}"/>
</Ellipse.OpacityMask>
</Ellipse>
</UserControl>
そのため、StrokeDashArray の最初の要素に対してアニメーションを実行し、コード ビハインド (C#) から開始する必要があります。また、アニメーションをリソースとしてどこかに置いて、コードから開始するか、コード内でアニメーション全体を実行することもできます。気にしませんが、コードを追加する場所を具体的に教えてください.. 迷っています。
また、ぼやけた線とコア ラインを 1 つのグリッドに追加してから、それに VisualBrush を適用しようとしました (つまり、2 回ではなく 1 回だけ適用します)。ふふふになりたい
すっごく、何か助けて?!?!?!?!?!