C# 动画贴图高度性能问题

C# 动画贴图高度性能问题,c#,windows-phone-8,bing-maps,C#,Windows Phone 8,Bing Maps,我正在使用底部的地图和菜单创建一个反应式UI。“我的地图”使用内置的windows phone bing地图控件,其下方有一个用户控件 我的XAML如下所示: <Grid x:Name="LayoutRoot" Background="Transparent"> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="*

我正在使用底部的地图和菜单创建一个反应式UI。“我的地图”使用内置的windows phone bing地图控件,其下方有一个用户控件

我的XAML如下所示:

<Grid x:Name="LayoutRoot" Background="Transparent">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>

    <Controls:Map x:Name="map"/>
    <Border Background="{StaticResource PhoneChromeBrush}"
            Grid.Row="1">
        <telerikPrimitives:RadTransitionControl Grid.Row="1">
            <views:OverviewPage/>
        </telerikPrimitives:RadTransitionControl>
    </Border>

</Grid>
现在,如果我把地图控件换成其他东西,比如说边界。一切正常,动画流畅。问题是,如果我使用地图,我的UI只会每隔半秒左右更新一次。我在Lumia 1520上有这种滞后,我无法想象它在低端设备上有多糟糕


我正在寻找一些方法来提高这部动画的性能,或者其他一些方法。以前有人尝试过这个方法吗?或者你知道一个好的解决方案吗?

这个问题是,每次移动地图或调整地图大小时,都会有一堆计算必须由地图来完成。设置贴图动画时,贴图的大小会在很短的时间内更新很多次,导致贴图多次重新计算所有内容。由于涉及所有数据和计算,地图控件通常倾向于重磅控件。应该避免设置地图大小动画之类的事情,尤其是在功能较弱的设备上,如手机。

我已经更多地使用了它,正如您所建议的那样。我需要想出其他方法来制作这个。我还要指出的是,这不仅限于地图控件,还可以通过Web浏览器或任何其他图形化用户控件生成。
DoubleAnimation animation = new DoubleAnimation() { Duration = TimeSpan.FromSeconds(10), To = 480, From = 0 };

Storyboard.SetTarget(animation, map);
Storyboard.SetTargetProperty(animation, new PropertyPath(HeightProperty));

Storyboard storyboard = new Storyboard();
storyboard.Children.Add(animation);
storyboard.Begin();