Example #1
0
        private void InitializeTiledLayer()
        {
            var tiledProvider = new RemoteTiledProvider
            {
                MinZoom = 0,
                MaxZoom = 22,
                RequestBuilderDelegate = (x, y, z) => xServerVersion.WithServicePath("rest", "XMap")
                                         + $"/tile/{z}/{x}/{y}"
                                         + $"?storedProfile={MapStyle}"
                                         + $"&layers={string.Join(",", BackgroundThemes.ToArray())}"
                                         + $"&xtok={Token}"
            };

            BackgroundLayer.TiledProvider  = tiledProvider;
            BackgroundLayer.IsBaseMapLayer = true; // set to the base map category -> cannot be moved on top of overlays

            BackgroundThemes.CollectionChanged += (sender, e) =>
            {
                BackgroundLayer.Copyright = FormatCopyRight(BackgroundThemes);
                BackgroundLayer.Refresh();
            };
        }
        private void InitializeTiledLayer()
        {
            var tiledProvider = new RemoteTiledProvider
            {
                MinZoom = 0,
                MaxZoom = 22,
                RequestBuilderDelegate = (x, y, z) =>
                {
                    var uri = xServerVersion.WithServicePath("rest", "XMap") + $"/tile/{z}/{x}/{y}?";
                    if (!string.IsNullOrEmpty(MapStyle))
                    {
                        uri += $"storedProfile={MapStyle}&";
                    }
                    if (BackgroundThemes.Count > 0)
                    {
                        uri += $"layers={string.Join(",", BackgroundThemes.ToArray())}&";
                    }
                    if (!string.IsNullOrEmpty(Token))
                    {
                        uri += $"xtok={Token}&";
                    }

                    // remove last separator
                    uri = uri.Substring(0, uri.Length - 1);

                    return(uri);
                }
            };

            BackgroundLayer.TiledProvider  = tiledProvider;
            BackgroundLayer.IsBaseMapLayer = true; // set to the base map category -> cannot be moved on top of overlays

            BackgroundThemes.CollectionChanged += (sender, e) =>
            {
                BackgroundLayer.Copyright = FormatCopyRight(BackgroundThemes);
                BackgroundLayer.Refresh();
            };
        }