private void RenderRouteSegmentInformation(LayerOverlay roadOverlay) { // Render Road information InMemoryFeatureLayer currentRoadLayer = (InMemoryFeatureLayer)roadOverlay.Layers["currentRoadLayer"]; currentRoadLayer.InternalFeatures.Clear(); currentRoadLayer.InternalFeatures.Add(editFeature.Id, editFeature); // render adjacent road InMemoryFeatureLayer adjacentRoadsLayer = roadOverlay.Layers["adjacentRoadsLayer"] as InMemoryFeatureLayer; // Get the feature id stored in FeatureSource Collection <string> adjacentIds = new Collection <string>(); foreach (string id in editRouteSegment.StartPointAdjacentIds) { if (!adjacentIds.Contains(id)) { adjacentIds.Add(id); } } foreach (string id in editRouteSegment.EndPointAdjacentIds) { if (!adjacentIds.Contains(id)) { adjacentIds.Add(id); } } // Render features Collection <Feature> features = featureSource.GetFeaturesByIds(adjacentIds, ReturningColumnsType.AllColumns); adjacentRoadsLayer.InternalFeatures.Clear(); foreach (Feature feature in features) { adjacentRoadsLayer.InternalFeatures.Add(feature.Id, feature); } winformsMap1.Refresh(roadOverlay); }