在MapItemsControl.ItemTemplate中绑定EntranceThemeTransition属性不起作用

时间:2014-12-03 09:39:04

标签: c# xaml windows-runtime windows-phone-8.1

我有一个地图控件,其地图项绑定如下:

<maps:MapItemsControl ItemsSource="{Binding MapObjects}">
    <maps:MapItemsControl.ItemTemplate>
        <DataTemplate>
            <Grid   
               maps:MapControl.Location="{Binding Location}"
               maps:MapControl.NormalizedAnchorPoint="{Binding AnchorPoint}" >
                   <Grid.Transitions>
                       <TransitionCollection>
                            <EntranceThemeTransition 
                                 FromVerticalOffset="{Binding VerticalOffset}" 
                                 FromHorizontalOffset="{Binding HorizontalOffset}" />
                       </TransitionCollection>
                   </Grid.Transitions>
               ...
            </Grid>
        </DataTemplate>
     </maps:MapItemsControl.ItemTemplate>
 </maps:MapItemsControl>

我想要实现的是让地图项目有一些不错的动画,这样它们就不会出现在任何地方......特别是我希望它们朝着地图中心的方向滑动到位

但是这段代码看起来并不起作用...... Binding甚至没有被称为&#39;对于EntranceThemeTransition的两个属性,它们保留默认值,以便每个地图项从右侧滑入。

此外,当我将Binding语句更改为我的ViewModel中不存在的某个属性:FromVerticalOffset="{Binding NonExistentProperty}时,没有错误表明通常会发生这种情况,看起来像这样:{{1 }}

有人可以帮忙吗?感谢。

1 个答案:

答案 0 :(得分:0)

我还没有使用MapItemsControl,但可能就像ItemsControl一样。从ItemTemplate中删除转换并将其添加到地图:MapItemsControl.ItemContainerTransitions,如下所示:

<maps:MapItemsControl ItemsSource="{Binding MapObjects}">
<maps:MapItemsControl.ItemContainerTransitions>
              <TransitionCollection>
                        <EntranceThemeTransition 
                             FromVerticalOffset="{Binding VerticalOffset}" 
                             FromHorizontalOffset="{Binding HorizontalOffset}" />
                   </TransitionCollection>
        </maps:MapItemsControl.ItemContainerTransitions>
<maps:MapItemsControl.ItemTemplate>
    <DataTemplate>
        <Grid   
           maps:MapControl.Location="{Binding Location}"
           maps:MapControl.NormalizedAnchorPoint="{Binding AnchorPoint}" >

           ...
        </Grid>
    </DataTemplate>
 </maps:MapItemsControl.ItemTemplate>