对项目c#/ wpf

时间:2018-07-25 20:57:07

标签: c# wpf animation collections code-behind

我试图在窗口上移动一个可观察的矩形集合。我的目标是为此使用一个简单的动画。我不知道在给定实例中可能有多少个矩形,所以我将它们放在项目控件中。此操作的目标是同时对item控件中的所有矩形进行动画处理。当矩形到达动画的结尾时,它将被“销毁”。我在底部的“ Player”矩形具有正确的动画效果,因为它只是我需要跟踪的单个项目。动画发生在后面的代码中。有人知道制作集合中所有项目动画的好方法吗?

    <ItemsControl x:Name="Barriers" ItemsSource="{Binding Barriers}">
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Rectangle x:Name="Rectangle" Fill="Green" Width="{Binding width}" Height="{Binding height}">
                    <Rectangle.RenderTransform>
                        <TranslateTransform X="{Binding xPosition}" Y="{Binding yPosition}"/>
                    </Rectangle.RenderTransform>
                </Rectangle>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
    <DockPanel Margin="20">
    <Button Click="Button_Click" Width="100">Quit Game</Button>
        <Button x:Name="JumpButton" Click="jump">Jump</Button>
        <Button x:Name="DuckButton" Click="duck">duck</Button>
        <Button Width="100"  Margin="20,0,0,0" Click="Button_Click_1">Home Screen</Button>
    </DockPanel>
    <Rectangle x:Name="Player"  Fill="Red"  Height="20" Width="20"  Canvas.Bottom="{Binding JumpHeight, UpdateSourceTrigger=PropertyChanged}" Canvas.Left="20"/>
</Canvas>

0 个答案:

没有答案