Windows phone 7 故事板可以';不能执行两次

Windows phone 7 故事板可以';不能执行两次,windows-phone-7,windows-phone-8,Windows Phone 7,Windows Phone 8,我尝试在我的应用程序中使用动画,我只使用两个页面来测试动画 当应用程序第一次启动时,我想用滑动效果设置应用程序标题的动画。标题应来自页面外部 我使用了以下代码: <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28"> <TextBlock x:Name="ApplicationTitle"

我尝试在我的应用程序中使用动画,我只使用两个页面来测试动画

当应用程序第一次启动时,我想用滑动效果设置应用程序标题的动画。标题应来自页面外部

我使用了以下代码:

 <StackPanel x:Name="TitlePanel"
                Grid.Row="0"
                Margin="12,17,0,28">
        <TextBlock x:Name="ApplicationTitle"
                   Text="{Binding LocalizedResources.ApplicationTitle, Source={StaticResource LocalizedStrings}}"
                   Style="{StaticResource PhoneTextNormalStyle}" RenderTransformOrigin="0.5,0.5" >
            <TextBlock.RenderTransform>
                <CompositeTransform x:Name="ApplicationTitleTransIn" TranslateX="-200"/>
            </TextBlock.RenderTransform>
            <TextBlock.Triggers>
                <EventTrigger RoutedEvent="TextBlock.Loaded">
                    <BeginStoryboard>
                        <Storyboard BeginTime="00:00:0.5">
                            <DoubleAnimation Duration="00:00:0.7"
                        Storyboard.TargetName="ApplicationTitleTransIn" 
                        Storyboard.TargetProperty="TranslateX" 
                        From="-200" To="0">
                                <DoubleAnimation.EasingFunction>
                                    <BackEase EasingMode="EaseOut"/>
                                </DoubleAnimation.EasingFunction>
                            </DoubleAnimation>
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </TextBlock.Triggers>
        </TextBlock>
    </StackPanel>
文本将移动到我页面的右侧,然后我将导航到第二页

直到现在一切都正常

但当我按下后退按钮(在电话上)时,我有一个例外

ExceptionObject = {System.InvalidOperationException: Cannot resolve TargetName ApplicationTitleTransIn.}
我错过什么了吗?这是实现此动画的正确方法吗


谢谢您的帮助。

在您的情况下,我会以不同的方式构建XAML布局。首先,您似乎不需要
compositeransform
,而只需要
translateransform
。在这种情况下,请将此代码段用于
RenderTransform

<TextBlock.RenderTransform>
        <TranslateTransform x:Name="ApplicationTitleTransIn" X="-200"/>
</TextBlock.RenderTransform>
这同样适用于使用关键帧的
双动画:

<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)"  Storyboard.TargetName="ApplicationTitle">


就像一个符咒。

我应用了你的解决方案,它就像一个符咒:)现在,当我按下后退按钮时,应用程序标题的位置被正确设置为-200,然后才能显示我的页面。在我的解决方案中,位置是0,然后是-200,并设置为0(这是一种奇怪的行为)。
<TextBlock.RenderTransform>
        <TranslateTransform x:Name="ApplicationTitleTransIn" X="-200"/>
</TextBlock.RenderTransform>
<DoubleAnimation Duration="00:00:0.7"
Storyboard.TargetName="ApplicationTitle"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)" 
From="-200" To="0">
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.X)"  Storyboard.TargetName="ApplicationTitle">