c# - UWP: MapControl 透明背景

标签 c# xaml uwp mapbox

我正在使用 MapBox 显示特定区域的自定义 map 。在 MapBox 中:我的特定区域是黄色的, map 的其余部分是透明的(见下图)。

In MapBox

我想达到的目标: 我想在背景图像上放置一个 MapControl。所以本地图的瓦片是透明的时,我可以看到背景图像。

我遇到的问题: 在我的 UWP 应用程序中, map 的特定区域显示正确(黄色),但 map 的其余部分是黑色的,因此背景图像被 map 隐藏了。

MapBox没有问题,因为生成的瓦片是透明的。我认为问题出在我的应用程序中。

我尝试将 MapControl 的背景设置为透明,但没有成功。

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;

我做错了什么还是根本不可能?

谢谢你的帮助

最佳答案

MapControl 是一个非常复杂的控件。它使用 SwapChainPanel 与 Direct X 互操作。如果您尝试做的事情可行,我会感到惊讶。

关于c# - UWP: MapControl 透明背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41221463/

相关文章:

visual-studio - 如何在 Visual Studio 中将一个 XAML 文件编译成多个项目?

c# - 如何在 UWP 中获取已连接的扫描仪列表

powershell - 如何在 Windows 10 中从 PowerShell 启动通用 Windows 应用程序 (UWP)?

c# - Entity Framework 6 : Multicolumn unique index featuring navigation property

C# PrintDocument 打印空白页。为什么?

WPF Popup IsOpen 问题

c# - ReSharper WPF错误: “Cannot resolve symbol ” MyVariable“due to unknown DataContext”

c# - UWP 写入 CSV 文件

c# - 并非所有代码路径都会返回一个值 - 但它们会

c# - 如何使用 C# 创建 SQL Server 2012 数据库?