2012-12-07 80 views
1

這是Silverlight的更多XAML問題。在Bing地圖(XAML)中創建可選圖釘

<Mobile:DevicePushpinTemplateSelector 
          m:MapLayer.Position="{Binding Location}" 
          ZoomLevel="{Binding ZoomLevel, ElementName=MainMap}" 
          Content="{Binding}"> 
          <Mobile:DevicePushpinTemplateSelector.DotTemplate> 
           <DataTemplate> 
            <Ellipse Width="8" Height="8" Stroke="Black" Fill="{Binding IsGPSDataRecent, Converter={StaticResource BoolToGreenRedBrushConverter}}" StrokeThickness="1"> 
             <ToolTipService.ToolTip> 
              <TextBlock Text="{Binding DisplayId}" /> 
             </ToolTipService.ToolTip> 
            </Ellipse> 
           </DataTemplate> 
          </Mobile:DevicePushpinTemplateSelector.DotTemplate> 
          <Mobile:DevicePushpinTemplateSelector.NumberedTemplate> 
           <DataTemplate> 
            <Border x:Name="border" Background="{Binding IsGPSDataRecent, Converter={StaticResource BoolToGreenRedBrushConverter}}" BorderBrush="Black" BorderThickness="2" Padding="2" Height="20" CornerRadius="8"> 
             <TextBlock VerticalAlignment="Center" Text="{Binding DisplayId}" /> 
            </Border> 
           </DataTemplate> 
          </Mobile:DevicePushpinTemplateSelector.NumberedTemplate> 
         </Mobile:DevicePushpinTemplateSelector> 

在上面的XAML上,我有兩個基於地圖縮放級別的不同模板。當它縮小時 - 顯示較小的橢圓,當用戶變得更近時 - 增加圖釘的大小。

2個問題:

  1. 有很多圖釘得到它的很慢,我相信這是由於模板選擇。我想讓它不同。我想創建「IsSelected」屬性,所有圖釘上的所有圖釘都是相同的,但是當用戶點擊圖釘時 - 它的尺寸會擴大。

我不知道如何編碼「選擇」部分。我只想在一次選擇一個圖釘。我可以綁定到屬性,並使圖釘零件可見/不可見,但我不知道如何編碼「選擇」一塊。它應該是Button嗎?

回答

0

當做一個Windows Phone應用程序時,我遇到了許多引腳引起「滯後」的問題,最簡單的方法是僅顯示地圖中心的某個半徑內的引腳,並刪除其他引腳,直到它們進入半徑。

乾杯 馬克