2011-12-21 37 views
0

这是我的场景。使用Bing Map控件(MVVM)工作:基于父属性切换模板。可能?

<m:Map x:Name="MainMap" 
      ZoomLevel="{Binding MapZoomLevel, Mode=TwoWay}" 
      Center="{Binding MapCenter, Mode=TwoWay}" 
      LogoVisibility="Collapsed" 
      CopyrightVisibility="Collapsed" 
      CredentialsProvider="{Binding BingApiKey}" 
      UseInertia="True" 
      Mode="Road" Grid.Column="2" Grid.RowSpan="5"> 
      <m:MapItemsControl 
       ItemsSource="{Binding Source={StaticResource WorkLayerData}}"> 
       <m:MapItemsControl.ItemTemplate> 
        <DataTemplate> 
         <Border m:MapLayer.Position="{Binding Location}" 
           Background="LightPink" BorderBrush="Black"> 
          <TextBlock Text="{Binding DisplayId}" />  
         </Border> 
        </DataTemplate> 
       </m:MapItemsControl.ItemTemplate> 
      </m:MapItemsControl> 
     </m:Map> 

在你看到我是如何通过简单的声明DataTemplate与边框和TextBlock的绑定我的“自定义”图钉底部。

我想是声明3个模板相同的项目,并选择其中的基础上MainMap

例如,当缩放级别< = 3我willdisplay小点,当它是3和8我之间ZoomLevel财产将显示更多花式图钉与ID,当它是8以上,我可能会显示更多的信息。

这是一个简单的想法,但我想知道如果可能的话..

回答