我正在尝试导入一个包含纬度和经度坐标列表的文件。在Visual C#中,使用GMAP.NET,为每个坐标对放置一个标记。我希望能够上传多个文件,并且用户能够为该特定文件选择标记的颜色。我有一个包含几个选项的组合框,但是当我尝试将标记的颜色设置为文本框中的文本时,它可以“隐式”将类型字符串转换为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是什么类型的?
答案 0 :(得分:0)
GMarkerGoogleType
是enum
,因此您基本上要求从string
转换为GMarkerGoogleType
:
GMarkerGoogleType MarkerColor = (GMarkerGoogleType)Enum.Parse(typeof(GMarkerGoogleType), cbo_MarkerType.Text, true);