改变标记的颜色
Changing Colors on Markers
我正在尝试导入一个包含经纬度坐标列表的文件。在 Visual C# 中,使用 GMAP.NET,为每个坐标对放置一个标记。我希望能够上传多个文件,并且用户能够 select 该特定文件的标记颜色。我有一个包含几个选项的组合框,但是当我尝试将标记的颜色设置为文本框中的文本时,它不能 "implicitly convert type string to GMarkerGoogleType"。有没有办法进行这种转换?
相关代码如下:
private void btn_KMLFile_Click(object sender, EventArgs e)
{
DialogResult result = openFileDialog4.ShowDialog();
if (result == DialogResult.OK)
{
string filename = openFileDialog4.FileName;
string[] lines = System.IO.File.ReadAllLines(filename);
foreach (string line in lines)
{
GMarkerGoogleType MarkerColor = cbo_MarkerType.Text; //How can I convert this string to a GMarkerGoogleType?
string[] Data_Array = line.Split(',');
Double londecimal = Convert.ToDouble(Data_Array[0]);
Double latdecimal = Convert.ToDouble(Data_Array[1]);
var marker3 = new GMarkerGoogle(new PointLatLng(latdecimal, londecimal), MarkerColor);
marker3.IsVisible = true;
gMapOverlay.Markers.Add(marker3);
gmap.Update();
}
}
}
编辑:这个问题不是重复的,这个问题可以改写为 GMarkerGoogleType 是什么类型?
GMarkerGoogleType
是一个 enum
,所以您基本上是在请求从 string
到 GMarkerGoogleType
的转换:
GMarkerGoogleType MarkerColor = (GMarkerGoogleType)Enum.Parse(typeof(GMarkerGoogleType), cbo_MarkerType.Text, true);
我正在尝试导入一个包含经纬度坐标列表的文件。在 Visual C# 中,使用 GMAP.NET,为每个坐标对放置一个标记。我希望能够上传多个文件,并且用户能够 select 该特定文件的标记颜色。我有一个包含几个选项的组合框,但是当我尝试将标记的颜色设置为文本框中的文本时,它不能 "implicitly convert type string to GMarkerGoogleType"。有没有办法进行这种转换?
相关代码如下:
private void btn_KMLFile_Click(object sender, EventArgs e)
{
DialogResult result = openFileDialog4.ShowDialog();
if (result == DialogResult.OK)
{
string filename = openFileDialog4.FileName;
string[] lines = System.IO.File.ReadAllLines(filename);
foreach (string line in lines)
{
GMarkerGoogleType MarkerColor = cbo_MarkerType.Text; //How can I convert this string to a GMarkerGoogleType?
string[] Data_Array = line.Split(',');
Double londecimal = Convert.ToDouble(Data_Array[0]);
Double latdecimal = Convert.ToDouble(Data_Array[1]);
var marker3 = new GMarkerGoogle(new PointLatLng(latdecimal, londecimal), MarkerColor);
marker3.IsVisible = true;
gMapOverlay.Markers.Add(marker3);
gmap.Update();
}
}
}
编辑:这个问题不是重复的,这个问题可以改写为 GMarkerGoogleType 是什么类型?
GMarkerGoogleType
是一个 enum
,所以您基本上是在请求从 string
到 GMarkerGoogleType
的转换:
GMarkerGoogleType MarkerColor = (GMarkerGoogleType)Enum.Parse(typeof(GMarkerGoogleType), cbo_MarkerType.Text, true);