【问题标题】:Cannot resolve TargetName... animation made via Blend doesnt actually work无法解析 TargetName... 通过 Blend 制作的动画实际上不起作用
【发布时间】:2014-11-06 13:07:55
【问题描述】:

我根据这个不错的tutorial.创建了翻转动画当我在Blend中运行动画时,没有问题并且动画运行。但是在调试时,整个程序崩溃并出现错误"Cannot resolve TargetName bingMapGrid." 我发现很少有类似的问题,但没有可以解决我的问题的解决方案。

带有动画元素的动画:

 <Page.Resources>
    <ResourceDictionary>
        <Utils:ColorQualityConverter x:Key="ColorQualityConverter"/>
        <localmain:PinTypeToStyleConverter x:Key="PinTypeToStyleConverter"/>

        <Storyboard x:Name="FlipOpen">
            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationY)" Storyboard.TargetName="bingMapGrid">
                <EasingDoubleKeyFrame KeyTime="0:0:0.0" Value="0"/>
                <EasingDoubleKeyFrame KeyTime="0:0:0.2" Value="90"/>
            </DoubleAnimationUsingKeyFrames>
            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Projection).(PlaneProjection.RotationY)" Storyboard.TargetName="mapSmall">
                <EasingDoubleKeyFrame KeyTime="0:0:0.2" Value="-90"/>
                <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="0"/>
            </DoubleAnimationUsingKeyFrames>
        </Storyboard>
    </ResourceDictionary>
</Page.Resources>

<Grid x:Name="mapPanelSubGrid" Background="#FF323232" Grid.RowSpan="3" Height="768">
            <Grid Margin="50,150,50,50">                    
                    <localmain:CzechMap x:Name="mapSmall" Margin="0" HorizontalAlignment="Center" VerticalAlignment="Center" >
                        <localmain:CzechMap.Projection>
                            <PlaneProjection RotationY="-90"/>
                        </localmain:CzechMap.Projection>
                    </localmain:CzechMap>

                    <Grid x:Name="bingMapGrid">
                        <Grid.Projection>
                            <PlaneProjection/>
                        </Grid.Projection>
                        <bm:Map x:Name="infoMap"  ZoomLevel="7.5"  Credentials="AhzZ6z0JmgoOrR1vGQx3frGtarXsH36-JMp9Ba9zvNP16UXmIgXF84o2oysH0Sbg" >
                            <bm:Map.Center>
                                <bm:Location Latitude="49.75" Longitude="15.333"/>
                            </bm:Map.Center>
                            <bm:MapLayer Visibility="Visible">
                                <bm:MapItemsControl x:Name="StationsDetailPinLayer" ItemsSource="{Binding Pinmanager.Pins}">
                                    <bm:MapItemsControl.ItemTemplate>
                                        <DataTemplate>
                                            <bm:Pushpin Tapped="Pushpin_Hold"
                                                BorderBrush="{Binding SelectedBrush}" 
                                                Background="{Binding Station.Quality, Converter={StaticResource ColorQualityConverter}}"
                                                Visibility="{Binding Visibility}"
                                                Text="{Binding Station.Quality}">
                                                <bm:MapLayer.Position>
                                                    <bm:Location Latitude="{Binding Location.Latitude}" Longitude="{Binding Location.Longitude}" />
                                                </bm:MapLayer.Position>
                                            </bm:Pushpin>
                                        </DataTemplate>
                                    </bm:MapItemsControl.ItemTemplate>
                                </bm:MapItemsControl>
                            </bm:MapLayer>
                        </bm:Map>

                    </Grid>
            </Grid>
            <AppBarButton x:Name="flipMapButton" HorizontalAlignment="Left" Icon="Map" Label="Detailní mapa" Margin="873,33,0,0" VerticalAlignment="Top" Tapped="flipMapButton_Tapped"/>
        </Grid>

代码启动动画:

private void flipMapButton_Tapped(object sender, Windows.UI.Xaml.Input.TappedRoutedEventArgs e)
    {
        FlipOpen.Begin();            
    }

提前感谢您的建议。

【问题讨论】:

    标签: c# xaml animation


    【解决方案1】:

    好的,我在发布问题后立即找到了解决方案。这有效,即使我不确定为什么。

    Resources.Add("FlipOpen", FlipOpen);
    :
    ((Storyboard)Resources["FlipOpen"]).Begin();
    

    【讨论】:

      猜你喜欢
      • 2016-08-15
      • 2011-12-28
      • 1970-01-01
      • 1970-01-01
      • 2014-12-22
      • 2015-06-30
      • 1970-01-01
      • 1970-01-01
      • 2019-12-13
      相关资源
      最近更新 更多