更改标记上的颜色
本文关键字:颜色 | 更新日期: 2023-09-27 18:02:11
我正在尝试导入一个包含经纬度坐标列表的文件。在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是什么类型?
GMarkerGoogleType
是enum
,所以你基本上是要求从string
到GMarkerGoogleType
的转换:
GMarkerGoogleType MarkerColor = (GMarkerGoogleType)Enum.Parse(typeof(GMarkerGoogleType), cbo_MarkerType.Text, true);