private void RenderElements( ) { //Name_Type_Shape_Longitude_Latitude(_Longitude_Latitude) List <UIElement> Elements = (from UIElement child in cnvRadar.Children select child).ToList( ); foreach (UIElement CurrentElement in Elements) { List <string> Params = CurrentElement.GetValue(TagProperty).ToString( ).Split(';').ToList( ); if (Params [2] == "Line") { CurrentElement.SetValue(Line.X1Property, GetScaledLongitude(int.Parse(Params [3]))); CurrentElement.SetValue(Line.Y1Property, GetScaledLatitude(int.Parse(Params [4]))); CurrentElement.SetValue(Line.X2Property, GetScaledLongitude(int.Parse(Params [5]))); CurrentElement.SetValue(Line.Y2Property, GetScaledLatitude(int.Parse(Params [6]))); } else if (Params [2] == "LineGeometry") { LineGeometry CurrentLine = new LineGeometry(new Point(GetScaledLongitude(int.Parse(Params [3])), GetScaledLatitude(int.Parse(Params [4]))), new Point(GetScaledLongitude(int.Parse(Params [5])), GetScaledLatitude(int.Parse(Params [6])))); CurrentElement.SetValue(Path.DataProperty, CurrentLine); } else { double OffsetX = 0, OffsetY = 0; if (Params [2] == "Label") { OffsetX = LabelOffsetX; OffsetY = LabelOffsetY; } CurrentElement.SetValue(Canvas.LeftProperty, GetScaledLongitude(int.Parse(Params [3])) + OffsetX); CurrentElement.SetValue(Canvas.TopProperty, GetScaledLatitude(int.Parse(Params [4])) + OffsetY); } } }