Wpf 单击“通过动画在uniformgrid中的其他元素上展开”时生成按钮

Wpf 单击“通过动画在uniformgrid中的其他元素上展开”时生成按钮,wpf,xaml,storyboard,mvvm-light,Wpf,Xaml,Storyboard,Mvvm Light,我正在开发一个WPF应用程序,同时遵循MVVM模式。但是我在动画方面遇到了一些麻烦。我用按钮填充了这个uniformGrid,当我按下其中一个按钮时,我希望它通过动画扩展到uniformGrid中的所有其他元素,直到它成为网格中的唯一元素 带有按钮的统一网格的图示 单击其中一个按钮后统一网格的图示。它将覆盖所有元素 如果您感到好奇,以下是一些代码: uniformgrid <Canvas Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="7

我正在开发一个WPF应用程序,同时遵循MVVM模式。但是我在动画方面遇到了一些麻烦。我用按钮填充了这个uniformGrid,当我按下其中一个按钮时,我希望它通过动画扩展到uniformGrid中的所有其他元素,直到它成为网格中的唯一元素

带有按钮的统一网格的图示

单击其中一个按钮后统一网格的图示。它将覆盖所有元素

如果您感到好奇,以下是一些代码:

uniformgrid

  <Canvas Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="7" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" x:Name="CanvasContainer">


            <ScrollViewer x:Name="TheScrollViewer" Uid="212"  Height="{Binding ActualHeight, RelativeSource={RelativeSource AncestorType=Canvas}}" 
                          Width="{Binding ActualWidth, RelativeSource={RelativeSource AncestorType=Canvas}}" 
                          VerticalScrollBarVisibility="Disabled" HorizontalScrollBarVisibility="Hidden" 

                          >

                <ItemsControl   HorizontalAlignment="Stretch" ItemsSource="{Binding PageList}"  >

                    <ItemsControl.ItemsPanel>
                        <ItemsPanelTemplate>
                            <StackPanel Orientation="Horizontal" IsItemsHost="True"/>
                        </ItemsPanelTemplate>
                    </ItemsControl.ItemsPanel>
                    <ItemsControl.ItemTemplate>
                        <DataTemplate>

                            <ItemsControl ItemsSource="{Binding}"  Height="{Binding ActualHeight, RelativeSource={RelativeSource AncestorType=Canvas}}" 
                          Width="{Binding ActualWidth, RelativeSource={RelativeSource AncestorType=Canvas}}">

                                <ItemsControl.ItemsPanel>
                                    <ItemsPanelTemplate>
                                        <UniformGrid 
                                            Rows="{Binding KeyboardModel.GridRows, Source={StaticResource Locator}}" 
                                                      Columns="{Binding KeyboardModel.GridColumns, Source={StaticResource Locator}}" >
                                            </UniformGrid>
                                    </ItemsPanelTemplate>
                                </ItemsControl.ItemsPanel>
                                <ItemsControl.ItemTemplate>
                                    <DataTemplate>
                                        <Grid>
                                            <navigationControls:SymbolControl></navigationControls:SymbolControl>


                                        </Grid>


                                    </DataTemplate>
                                </ItemsControl.ItemTemplate>
                            </ItemsControl>
                        </DataTemplate>

                    </ItemsControl.ItemTemplate>
                </ItemsControl>
            </ScrollViewer>


        </Canvas>

按钮

<Grid>
    <Button   x:Name="SymbolButton"   wpf:WindowBoundInteraction.Command="{Binding KeyboardModel.UpdateSymbolsCommand, Source={StaticResource Locator}}" 
   CommandParameter="{Binding}"  Width="200"  Style="{StaticResource SymbolButtonStyle}" >

        <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
            <Image Source="{Binding Path=Image}" Height="100"/>
            <TextBlock Text="{Binding Name}" HorizontalAlignment="Center" FontSize="20" />
        </StackPanel>
        <Button.RenderTransform>
            <TranslateTransform></TranslateTransform>
        </Button.RenderTransform>
        <Button.Triggers>
            <!-- <EventTrigger RoutedEvent="Button.Loaded">
                <BeginStoryboard Storyboard="{StaticResource FadeInStoryboard}"></BeginStoryboard>
            </EventTrigger>-->
            <EventTrigger RoutedEvent="wpf:WindowBoundInteraction.Activate">
                <BeginStoryboard Storyboard="{StaticResource Minimize}"></BeginStoryboard>
            </EventTrigger >
        </Button.Triggers>

    </Button>

</Grid>

不需要太长的回答,如果有人能给我指出正确的方向,我会非常高兴