Я использую MapBox для отображения пользовательской карты определенной области. В MapBox: моя конкретная область желтая, а остальная часть карты прозрачна (см. Следующий рисунок).UWP: MapControl Прозрачный фон
То, что я хочу добиться: Я хочу поставить 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;
Я делаю что-то неправильно, или это просто не возможно?
Спасибо за вашу помощь
Вы пытались изменить Layer of MapTileSource? Например mts.Layer = MapTileLayer.BackgroundReplacement; – Kuba
Просто попробовал. Ничего не изменилось к сожалению :(Спасибо в любом случае :) – Sudo
Является ли фоновое свойство MapControl полностью игнорируемым? Потому что, если нет, возможно, вы можете установить фон с помощью свойства ImageBrush, например. ' MapsControl.Background>' –
schumi1331