0

このWPFコードをC#に変換するのに苦労しています。私はWPFに比較的慣れていないので、誰かがここで私を助けてくれることを本当に望んでいます:)

    <Path Fill="Blue" Margin="15,15,15,15">
        <Path.Data>
            <EllipseGeometry x:Name="MyAnimatedEllipseGeometry"
                Center="10,100" RadiusX="15" RadiusY="15" />
        </Path.Data>
        <Path.Triggers>
            <EventTrigger RoutedEvent="Path.Loaded">
                <BeginStoryboard Name="MyBeginStoryboard">
                    <Storyboard>

                        <!-- Animates the ellipse along the path. -->
                        <PointAnimationUsingPath
                            Storyboard.TargetName="MyAnimatedEllipseGeometry"
                            Storyboard.TargetProperty="Center"
                            Duration="0:0:5" 
                            RepeatBehavior="Forever" >
                            <PointAnimationUsingPath.PathGeometry>
                                <PathGeometry 
                                    Figures="M 10,100 C 35,0 135,0 160,100 135,0 35,0 10,100"
                                />
                            </PointAnimationUsingPath.PathGeometry>
                        </PointAnimationUsingPath>
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </Path.Triggers>
    </Path>
</Canvas>

PathGeometryFiguresにたどり着くまではうまくやっているようでした...誰かがこのWPFコードのC#コードスニペットを私に提供してくれるなら、それは大いにありがたいです!

4

2 に答える 2

3

次のmsdnの記事を読むことをお勧めします。

"M 10,100 C 35,0 135,0 160,100 135,0 35,0 10,100"

次の意味:(10,100)から開始します。コントロールポイント(35,0)、(135,0)、(160,100)、(135,0)、(35,0)で終わる10,100で終わる「立方ベジェ曲線」を追加します。

私が理解しているように。このようなテキストは、PathSegmentCollectionに簡単にレンダリングできる必要があります。

于 2012-04-16T08:09:44.297 に答える
1

これはあなたが探しているものです:PointAnimationUsingPath.PathGeometry。問題を解決する方法の詳細な例があります。これは、PointAnimationUsingPathオブジェクトを使用して、曲線のパスに沿ってポイントをアニメーション化する方法を示しています。完全なサンプルの場合; ストーリーボードを使用したくない場合:方法:ストーリーボードを使用せずにプロパティをアニメーション化する。MSDNには例と詳細な説明が用意されていることに注意してください。

于 2012-04-16T10:20:32.237 に答える