C# 停止动画并使用开关盒启动另一个动画

C# 停止动画并使用开关盒启动另一个动画,c#,.net,wpf,xaml,C#,.net,Wpf,Xaml,我有一个动画,它在加载时开始: <Grid.Triggers> <EventTrigger RoutedEvent= "Canvas.Loaded"> <BeginStoryboard> <Storyboard x:Name="sb1" RepeatBehavior="Forever"> <DoubleAnimation Name=

我有一个动画,它在加载时开始:

<Grid.Triggers>
        <EventTrigger RoutedEvent= "Canvas.Loaded">
            <BeginStoryboard>
                <Storyboard x:Name="sb1" RepeatBehavior="Forever">
                    <DoubleAnimation Name="earth" From="0" To="-360" Duration="0:0:10" AutoReverse="False" Storyboard.TargetName="rotation" Storyboard.TargetProperty="Angle" />
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>           
    </Grid.Triggers>

你犯了什么错误?FindName()是否返回null?它只是不工作,动画没有停止,第二个动画也没有开始。我需要先停止,然后当用户输入一个case时触发第二个动画,但我不知道如何在
<EventTrigger RoutedEvent= ""><!--switch case "AMERICA" -->
            <BeginStoryboard>
                <Storyboard x:Name="sb2">
                    <DoubleAnimation Name="america" To="0" Duration="0:0:5" AutoReverse="False" Storyboard.TargetName="rotation" Storyboard.TargetProperty="Angle" />
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>      
 switch (e.Result.Semantics.Value.ToString())
            {

                case "AMERICA":
                    americaSpan.Foreground = Brushes.DeepSkyBlue;
                    americaSpan.FontWeight = FontWeights.Bold;

                    Storyboard storyBoard1 = (Storyboard)FindName("sb1");
                    Storyboard storyBoard2 = (Storyboard)FindName("sb2");
                    storyBoard1.Stop();
                    storyBoard2.Begin();

                    break;   

            }