Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从WPF C#VS2013的OpenStreetMap中的地图上显示的图像中删除标记的背景_C#_Wpf_Visual Studio_Google Maps_Openstreetmap - Fatal编程技术网

从WPF C#VS2013的OpenStreetMap中的地图上显示的图像中删除标记的背景

从WPF C#VS2013的OpenStreetMap中的地图上显示的图像中删除标记的背景,c#,wpf,visual-studio,google-maps,openstreetmap,C#,Wpf,Visual Studio,Google Maps,Openstreetmap,我想在C#VS2013的OpenStreetMap中为地图添加一个标记 我正在制作WPF。我设计了一个在地图中添加标记的功能,但它无法显示 标记可以显示在地图上,但这是因为图像是正方形,标记本身有一些白色背景,覆盖了标记位置周围的区域。如何仅添加标记本身而不在地图上覆盖周围区域的任何背景 任何帮助都将不胜感激 代码是: using System.Windows; using System.Windows.Controls; using System.Windows.Data; using Sys

我想在C#VS2013的OpenStreetMap中为地图添加一个标记

我正在制作WPF。我设计了一个在地图中添加标记的功能,但它无法显示

标记可以显示在地图上,但这是因为图像是正方形,标记本身有一些白色背景,覆盖了标记位置周围的区域。如何仅添加标记本身而不在地图上覆盖周围区域的任何背景

任何帮助都将不胜感激

代码是:

using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using GMap.NET;
using GMap.NET.WindowsPresentation;
using GMap.NET.MapProviders;
namespace try_gmap_wpf
{
  public partial class MainWindow : Window
  {
    public MainWindow()
    {
        InitializeComponent();
        myMap.MapProvider = OpenStreetMapProvider.Instance;
        GMap.NET.GMaps.Instance.Mode = AccessMode.ServerOnly;
        myMap.Position = new PointLatLng(42.742826, -77.030212);
        myAddMarker(42.344142, -71.067330, ref myMap);

        myMap.MinZoom = 0;
        myMap.MaxZoom = 10;
        //set zoom
        myMap.Zoom = 5;
        myMap.ShowCenter = true; 
        myMap.CanDragMap = true;
    }

    public void myAddMarker(double latitude, double longitude, ref GMapControl myMap)
    {
            System.Windows.Media.Imaging.BitmapImage bitmapImage = new BitmapImage();
            bitmapImage.BeginInit();
            // this image is a square. It has some background covering areas surrounding the marked location.
            bitmapImage.UriSource = new Uri(@"C:\images\map_marker.png");
            bitmapImage.DecodePixelHeight = 15;
            bitmapImage.DecodePixelWidth = 15;
            bitmapImage.EndInit();
            GMap.NET.PointLatLng point = new GMap.NET.PointLatLng(latitude, longitude);
            GMapMarker marker = new GMapMarker(point);
            System.Windows.Controls.Image image = new System.Windows.Controls.Image();
            image.Source = bitmapImage;
            marker.Shape = image;
            marker.Tag = "cde";
            marker.ZIndex = 10;
            myMap.Markers.Add(marker);
      }
  }
}

你能编辑标记使背景透明吗?我看不出“marker”类有这样做的方法。谢谢