//…… DashTextStyle myTextStyle = new DashTextStyle("AREANAME", new GeoFont("Arial", 10, DrawingFontStyles.Italic), new GeoSolidBrush(GeoColor.StandardColors.Black)); majorCitiesShapeLayer.ZoomLevelSet.ZoomLevel01.DefaultTextStyle = myTextStyle; //…… class DashTextStyle : TextStyle { public DashTextStyle() : this(string.Empty, new GeoFont(), new GeoSolidBrush()) { } public DashTextStyle(string textColumnName, GeoFont textFont, GeoSolidBrush textSolidBrush) : base(textColumnName, textFont, textSolidBrush) {} protected override void DrawCore(IEnumerable features, GeoCanvas canvas, Collection labeledInLayer, Collection labeledInLayers) { foreach (Feature feature in features) { string newString = GetDashedString(feature.ColumnValues[TextColumnName]); feature.ColumnValues[TextColumnName] = newString; } base.DrawCore(features, canvas, labeledInLayer, labeledInLayers); } private string GetDashedString(string originalString) { StringBuilder sb = new StringBuilder(); string trimmedOriginalString = originalString.Trim(); for (int i = 0; i < trimmedOriginalString.Length; i += 2) { sb.Append("-"); if (i < trimmedOriginalString.Length - 2) { sb.Append(trimmedOriginalString.Substring(i, 2)); } else { sb.Append(trimmedOriginalString.Substring(i)); } } string myCustomString = sb.ToString(); myCustomString.PadLeft(originalString.Length); return myCustomString; } }