У нас проблема с телефонами HTC и коснитесь элемента управления картой. Это работает на Samsung Focus или LG Optima, например.
На карте мы показываем «территории» по телефону:
MapPolygon shape = new MapPolygon();
shape.Locations = lb.Points;
shape.StrokeThickness = 1;
shape.Tag = lb;
shape.Stroke =
new SolidColorBrush(Colors.Black);
shape.Fill = lb.ColorBrush;
shape.Tag = lb;
_touchTerritoryBehavior =
new TouchBehavior(shape);
_touchTerritoryBehavior.Tap +=
new EventHandler(_touchTerritoryBehavior_Tap);
MyLayer.Children.Add(shape);
Где TouchBehaviour совпадает с тем, что находится внутри учебного набора WP7 MyLayer - это просто слой на карте
<my:Map Name="myMap" CredentialsProvider="{Binding CredentialsProvider}" LogoVisibility="Collapsed"
ZoomLevel="{Binding Zoom, Mode=TwoWay}"
Center="{Binding Center, Mode=TwoWay}" AnimationLevel="None"
Height="680" Width="480" VerticalAlignment="Bottom" CopyrightVisibility="Collapsed" ViewChangeEnd="myMap_ViewChangeEnd" Margin="0,55,0,0">
<my:Map.Mode>
<my:RoadMode />
</my:Map.Mode>
<my:MapLayer Name="PinLayer">
</my:MapLayer>
<my:MapLayer x:Name="MyLayer">
<my:MapPolygon Locations="20,-20 20,20 -20,20 -20,-20" Opacity="0.7" />
</my:MapLayer>
Так почему же это не работает на телефонах HTC, но отлично работает на других телефонах WP7?