我正在使用C#和XAML开发一个Windows 8应用程序。该应用程序有一个地图页面,其中包含自定义的标点。我使用以下代码添加了自定义标点:
<Style x:Key="PushPinStyle" TargetType="bm:Pushpin">
<Setter Property="Width" Value="25"/>
<Setter Property="Height" Value="39"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Image Source="Assets/pushpin_icon.png" Stretch="Uniform" HorizontalAlignment="Left"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
一旦启用上面的代码,除非用户移动地图,否则推钉不会显示。以下代码用于生成地图。 数据模板 -
<DataTemplate x:Key="pushpinSelector" >
<bm:Pushpin Tapped="pushpinTapped" Style="{StaticResource PushPinStyle}">
<bm:MapLayer.Position >
<bm:Location Latitude="{Binding Latitude}" Longitude="{Binding Longitude}"/>
</bm:MapLayer.Position>
</bm:Pushpin>
</DataTemplate>
XAML地图 -
<bm:Map.Children>
<bm:MapItemsControl Name="pushPinModelsLayer"
ItemsSource="{Binding Results}"
ItemTemplate="{StaticResource pushpinSelector}" />
</bm:Map.Children>
</bm:Map>
一旦我移除Pushpin的自定义样式,使用默认样式的Pushpin会正确显示而无需移动地图。我希望自定义的Pushpin也能不需要手动移动地图就能类似地显示出来。提前感谢您的解决方案。