我正在使用MapBox显示特定区域的自定义地图。在MapBox中:我的特定区域是黄色,地图的其余部分是透明的(参见下图)。
我想要实现的目标: 我想将MapControl放在背景图像上。因此,当地图的图块是透明的时,我可以看到背景图像。
我遇到的问题: 在我的UWP应用程序中,地图的特定区域显示正确(黄色)但地图的其余部分为黑色,因此背景图像被地图隐藏。
MapBox没有问题,因为生成的图块是透明的。我认为问题出在我的应用程序中。
我尝试将MapControl的背景设置为Transparent而没有成功。
XAML
<Image x:Name="background"
Stretch="UniformToFill"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"/>
<maps:MapControl x:Name="MyMap"
Background="Transparent"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
MapServiceToken="TOKEN"/>
C#
HttpMapTileDataSource leaflet = new HttpMapTileDataSource(
"URL_TO_MAPBOX_API");
MapTileSource mts = new MapTileSource(leaflet);
mts.IsTransparencyEnabled = true;
mts.AllowOverstretch = true;
mts.IsFadingEnabled = false;
this.MyMap.TileSources.Add(mts);
this.MyMap.Style = MapStyle.None;
我做错了什么或者根本不可能?
感谢您的帮助
答案 0 :(得分:0)
MapControl是一个非常复杂的控件。它使用SwapChainPanel与Direct X互操作。如果您尝试做的事情可能会让我感到惊讶。