User Tools

Site Tools


thinkgeo.mapsuite.portablecore.iconstyle

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
thinkgeo.mapsuite.portablecore.iconstyle [2015/08/20 03:08]
127.0.0.1 external edit
thinkgeo.mapsuite.portablecore.iconstyle [2017/03/16 21:59] (current)
Line 1: Line 1:
-====== ThinkGeo.MapSuite.PortableCore.IconStyle ======+====== ThinkGeo.MapSuite.Core.IconStyle ======
  
 +{{section>​upgrade_map_suite_to_10.0}}
  
- 
-<!-- Class --> 
 This class displays an icon with text from the data of the feature. This class displays an icon with text from the data of the feature.
-=== Remarks === 
-You can use the IconStyle when you have an icon you want to display on the map with characters inside of that icon. For example, if you have a circular icon and you want to label the number 1-100 inside of the icon, you can use this class. You need to specify the column name where the numbers or letters will come from, as well as a font. Through various properties, you can also control the positioning of the icon, just as you would with the TextStyle. 
 ===== Inheritance Hierarchy ===== ===== Inheritance Hierarchy =====
-*System.Object +  ​*System.Object 
-**[[ThinkGeo.MapSuite.PortableCore.Style]] +    *ThinkGeo.MapSuite.Core.Style 
-***[[ThinkGeo.MapSuite.PortableCore.PositionStyle]] +      *ThinkGeo.MapSuite.Core.PositionStyle 
-****[[ThinkGeo.MapSuite.PortableCore.TextStyle]] +        *ThinkGeo.MapSuite.Core.TextStyle 
-*****[[ThinkGeo.MapSuite.PortableCore.IconStyle]]+          ***ThinkGeo.MapSuite.Core.IconStyle**
 ===== Members Summary ===== ===== Members Summary =====
 ==== Public Constructors ==== ==== Public Constructors ====
-^ Name ^ Parameters ^ DeclaringType ^ Summary ^ +** {{wiki:​PublicMethod.gif|}} IconStyle() ​**
-{{wiki:​PublicMethod.gif|Public Method}}[[#IconStyle()|IconStyle]] ​  ​| ​   |    | This is the constructor for the class. ​  | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​IconStyle(String,​ String, GeoFont, GeoSolidBrush)|IconStyle]] ​  | String, String, [[ThinkGeo.MapSuite.PortableCore.GeoFont|GeoFont]],​ [[ThinkGeo.MapSuite.PortableCore.GeoSolidBrush|GeoSolidBrush]] ​  ​| ​   | This is the constructor for the class. ​  | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​IconStyle(GeoImage,​ String, GeoFont, GeoSolidBrush)|IconStyle]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoImage|GeoImage]],​ String, [[ThinkGeo.MapSuite.PortableCore.GeoFont|GeoFont]],​ [[ThinkGeo.MapSuite.PortableCore.GeoSolidBrush|GeoSolidBrush]] ​  ​| ​   | This is the constructor for the class. ​  |+
  
-==== Protected Constructors ​==== +  * //This is the constructor for the class.// 
-^ Name ^ Parameters ^ DeclaringType ^ Summary ^+== Remarks ​== 
 +  * //If you use this, then you should set the properties manually -- such as the column name, font, solid brush and the image.// 
 +== Parameters ​== 
 +<div newline></​div>​ 
 +** {{wiki:​PublicMethod.gif|}} IconStyle(String,​String,​GeoFont,​GeoSolidBrush) **
  
 +  * //This is the constructor for the class.//
 +== Remarks ==
 +  * //This constructor allows you to pass in the path to the icon, along with the column name, font and solid brush to use. This is the most commonly used constructor. If you need to use an image from a stream, then you should use the constructor that takes a GeoImage.//
 +== Parameters ==
 +  * //​iconPathFilename//​
 +    * Type:String
 +    * Description:​This parameter is the path and filename of the icon you want to use.
 +
 +  * //​textColumnName//​
 +    * Type:String
 +    * Description:​This parameter is the column name from which to get the data for the text.
 +
 +  * //​textFont//​
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoFont|GeoFont]]
 +    * Description:​This parameter is the font used to draw the text on the icon.
 +
 +  * //​textSolidBrush//​
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoSolidBrush|GeoSolidBrush]]
 +    * Description:​This parameter is the solid brush that is used to draw the text on the icon.
 +
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} IconStyle(GeoImage,​String,​GeoFont,​GeoSolidBrush) **
 +
 +  * //This is the constructor for the class.//
 +== Remarks ==
 +  * //This constructor allows you to use a GeoImage instead of specifying a path and filename of the icon. This is commonly used if the image comes from a stream.//
 +== Parameters ==
 +  * //​iconImage//​
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoImage|GeoImage]]
 +    * Description:​This parameter is the image to use in this style.
 +
 +  * //​textColumnName//​
 +    * Type:String
 +    * Description:​This parameter is the column name from which to get the data for the text.
 +
 +  * //​textFont//​
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoFont|GeoFont]]
 +    * Description:​This parameter is the font used to draw the text on the icon.
 +
 +  * //​textSolidBrush//​
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoSolidBrush|GeoSolidBrush]]
 +    * Description:​This parameter is the solid brush that is used to draw the text on the icon.
 +
 +<div newline></​div>​
 +==== Protected Constructors ====
 ==== Public Methods ==== ==== Public Methods ====
-^ Name ^ Parameters ^ DeclaringType ^ Summary ^ +** {{wiki:​PublicMethod.gif|}} CloneDeep() ​**
-{{wiki:​PublicMethod.gif|Public Method}}[[#CloneDeep()|CloneDeep]] ​  ​| ​   | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | Create a copy of style using the deep clone process. ​  | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​Draw(IEnumerable<​BaseShape>,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​)|Draw]] ​  | IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.BaseShape|BaseShape]]>,​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>,​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | This method draws the shapes on the canvas you provided. ​  | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​Draw(IEnumerable<​Feature>,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​)|Draw]] ​  | IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]>,​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>,​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | This method draws the features on the canvas you provided. ​  | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​DrawSample(GeoCanvas)|DrawSample]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]] ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  ​| ​   | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​DrawSample(GeoCanvas,​ DrawingRectangleF)|DrawSample]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ [[ThinkGeo.MapSuite.PortableCore.DrawingRectangleF|DrawingRectangleF]] ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | This method draws a sample feature on the canvas you provided. ​  | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​Equals(Object)|Equals]] ​  | Object ​  | Object ​  ​| ​   | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​GetHashCode()|GetHashCode]] ​  ​| ​   | Object ​  ​| ​   | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​GetRequiredColumnNames()|GetRequiredColumnNames]] ​  ​| ​   | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | This method returns the column data for each feature that is required for the style to properly draw.   | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​GetType()|GetType]] ​  ​| ​   | Object ​  ​| ​   | +
-| {{wiki:​PublicMethod.gif|Public Method}}[[#​ToString()|ToString]] ​  ​| ​   | Object ​  ​| ​   |+
  
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:​[[ThinkGeo.MapSuite.Core.Style|Style]]
 +  * Description:​N/​A
 +
 +== Parameters ==
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} Draw(IEnumerable<​Feature>,​GeoCanvas,​Collection<​SimpleCandidate>,​Collection<​SimpleCandidate>​) **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:Void
 +  * Description:​N/​A
 +
 +== Parameters ==
 +  * //​features//​
 +    * Type:​IEnumerable<​[[ThinkGeo.MapSuite.Core.Feature|Feature]]>​
 +    * Description:​N/​A
 +
 +  * //canvas//
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
 +    * Description:​N/​A
 +
 +  * //​labelsInThisLayer//​
 +    * Type:​Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>​
 +    * Description:​N/​A
 +
 +  * //​labelsInAllLayers//​
 +    * Type:​Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>​
 +    * Description:​N/​A
 +
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} Draw(IEnumerable<​BaseShape>,​GeoCanvas,​Collection<​SimpleCandidate>,​Collection<​SimpleCandidate>​) **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:Void
 +  * Description:​N/​A
 +
 +== Parameters ==
 +  * //shapes//
 +    * Type:​IEnumerable<​[[ThinkGeo.MapSuite.Core.BaseShape|BaseShape]]>​
 +    * Description:​N/​A
 +
 +  * //canvas//
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
 +    * Description:​N/​A
 +
 +  * //​labelsInThisLayer//​
 +    * Type:​Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>​
 +    * Description:​N/​A
 +
 +  * //​labelsInAllLayers//​
 +    * Type:​Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>​
 +    * Description:​N/​A
 +
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} GetRequiredColumnNames() **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:​Collection<​String>​
 +  * Description:​N/​A
 +
 +== Parameters ==
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} DrawSample(GeoCanvas,​DrawingRectangleF) **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:Void
 +  * Description:​N/​A
 +
 +== Parameters ==
 +  * //canvas//
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
 +    * Description:​N/​A
 +
 +  * //​drawingExtent//​
 +    * Type:​[[ThinkGeo.MapSuite.Core.DrawingRectangleF|DrawingRectangleF]]
 +    * Description:​N/​A
 +
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} DrawSample(GeoCanvas) **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:Void
 +  * Description:​N/​A
 +
 +== Parameters ==
 +  * //canvas//
 +    * Type:​[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
 +    * Description:​N/​A
 +
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} ToString() **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:String
 +  * Description:​N/​A
 +
 +== Parameters ==
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} Equals(Object) **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:​Boolean
 +  * Description:​N/​A
 +
 +== Parameters ==
 +  * //obj//
 +    * Type:Object
 +    * Description:​N/​A
 +
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} GetHashCode() **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:Int32
 +  * Description:​N/​A
 +
 +== Parameters ==
 +<div newline></​div>​
 +** {{wiki:​PublicMethod.gif|}} GetType() **
 +
 +  * //N/A//
 +== Remarks ==
 +  * //N/A//
 +
 +== Return Value ==
 +  * Type:Type
 +  * Description:​N/​A
 +
 +== Parameters ==
 +<div newline></​div>​
 ==== Protected Methods ==== ==== Protected Methods ====
-^ Name ^ Parameters ^ DeclaringType ^ Summary ^ +** {{wiki:​ProtectedMethod.gif|}} DrawSampleCore(GeoCanvas,​DrawingRectangleF) ​**
-{{wiki:​ProtectedMethod.gif|Protected Method}}[[#​CheckDuplicate(LabelingCandidate,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​)|CheckDuplicate]] ​  | [[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]],​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>,​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This method will determine whether the label will be suppressed because it is a duplicate. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​CheckDuplicateCore(LabelingCandidate,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​)|CheckDuplicateCore]] ​  | [[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]],​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>,​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This method will determine if the label will be suppressed because it is a duplicate. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​CheckOverlapping(LabelingCandidate,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​)|CheckOverlapping]] ​  | [[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]],​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>,​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This method will determine if the label will be suppressed because of overlapping. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​CheckOverlappingCore(LabelingCandidate,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​)|CheckOverlappingCore]] ​  | [[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]],​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>,​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This method will determine whether the label will be suppressed because of overlapping. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​CloneDeepCore()|CloneDeepCore]] ​  ​| ​   | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | Create a copy of style using the deep clone process. The default implementation method uses serialization. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​DrawCore(IEnumerable<​Feature>,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​)|DrawCore]] ​  | IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]>,​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>,​ Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]](overriden) ​  | This method draws the features on the canvas you provided. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#DrawSampleCore(GeoCanvas,​ DrawingRectangleF)|DrawSampleCore]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]],​ [[ThinkGeo.MapSuite.PortableCore.DrawingRectangleF|DrawingRectangleF]] ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]](overriden) ​  ​| ​   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​FilterFeaturesCore(IEnumerable<​Feature>,​ GeoCanvas)|FilterFeaturesCore]] ​  | IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]>,​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This method filters the features based on the grid size to facilitate deterministic labeling. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​Finalize()|Finalize]] ​  ​| ​   | Object ​  ​| ​   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​Format(String,​ BaseShape)|Format]] ​  | String, [[ThinkGeo.MapSuite.PortableCore.BaseShape|BaseShape]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  ​| ​   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​FormatCore(String,​ BaseShape)|FormatCore]] ​  | String, [[ThinkGeo.MapSuite.PortableCore.BaseShape|BaseShape]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  ​| ​   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​GetLabelingCandidateCore(Feature,​ GeoCanvas)|GetLabelingCandidateCore]] ​  | [[ThinkGeo.MapSuite.PortableCore.Feature|Feature]],​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]](overriden) ​  | This method determines which labels will be candidates for drawing. ​  | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​GetLabelingCandidates(Feature,​ GeoCanvas)|GetLabelingCandidates]] ​  | [[ThinkGeo.MapSuite.PortableCore.Feature|Feature]],​ [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This method determines whether the specified feature is a good candidate to be labeled, based on the labeling properties set.   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​GetRequiredColumnNamesCore()|GetRequiredColumnNamesCore]] ​  ​| ​   | [[ThinkGeo.MapSuite.PortableCore.Style|Style]](overriden) ​  ​| ​   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​MemberwiseClone()|MemberwiseClone]] ​  ​| ​   | Object ​  ​| ​   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​OnFormatted(FormattedPositionStyleEventArgs)|OnFormatted]] ​  | [[ThinkGeo.MapSuite.PortableCore.FormattedPositionStyleEventArgs|FormattedPositionStyleEventArgs]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  ​| ​   | +
-| {{wiki:​ProtectedMethod.gif|Protected Method}}[[#​OnFormatting(FormattingPositionStyleEventArgs)|OnFormatting]] ​  | [[ThinkGeo.MapSuite.PortableCore.FormattingPositionStyleEventArgs|FormattingPositionStyleEventArgs]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  ​| ​   |+
  
-==== Public Properties ==== +  * //N/A// 
-^ Name ^ Return ^ DeclaringType ^ Summary ^ +== Remarks ​== 
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​Advanced|Advanced]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyleAdvanced|TextStyleAdvanced]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets the advanced properties of the class. ​  | +  * //N/A//
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​AllowLineCarriage|AllowLineCarriage]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets whether the labeler will allow carriage returns to be inserted. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​BestPlacement|BestPlacement]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets whether the labeler will attempt to change the label position to avoid overlapping for point-based features. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​CustomTextStyles|CustomTextStyles]] ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]]> ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property returns a collection of area styles allowing you to stack multiple area styles on top of each other. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​DateFormat|DateFormat]] ​  | String ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the format that will be applied to the text which can be parsed to DateTime type.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​DrawingLevel|DrawingLevel]] ​  | [[ThinkGeo.MapSuite.PortableCore.DrawingLevel|DrawingLevel]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | Gets or sets the DrawingLavel for this style. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​DuplicateRule|DuplicateRule]] ​  | [[ThinkGeo.MapSuite.PortableCore.LabelDuplicateRule|LabelDuplicateRule]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets the rule that determines how duplicate labels are handled. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​Filters|Filters]] ​  | Collection<​String> ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  ​| ​   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​FittingLineInScreen|FittingLineInScreen]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets whether the labeler will try to fit the label as best as it can on the visible part of a line on the screen. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​FittingPolygon|FittingPolygon]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets whether the labeler will try to fit the label as best as it can within the boundary of a polygon. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​FittingPolygonFactor|FittingPolygonFactor]] ​  | Double ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets the factor to which it will keep the label inside of the polygon. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​FittingPolygonInScreen|FittingPolygonInScreen]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets whether the labeler will try to fit the label as best as it can on the visible part of a polygon on the screen. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​Font|Font]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoFont|GeoFont]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the font that will be used to draw the text.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​ForceHorizontalLabelForLine|ForceHorizontalLabelForLine]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets whether we should force horizontal labeling for lines. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​ForceLineCarriage|ForceLineCarriage]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets whether the labeler will force carriage returns to be inserted. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​GridSize|GridSize]] ​  | Int32   | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets the grid size used for deterministic labeling. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​HaloPen|HaloPen]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoPen|GeoPen]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the halo pen you may use to draw a halo around the text.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​IconFilePathName|IconFilePathName]] ​  | String ​  ​| ​   | This property gets and sets the filename and path for the image you want to use in the style. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​IconImage|IconImage]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoImage|GeoImage]] ​  ​| ​   | This property gets and sets the GeoImage you want to use for the image. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​IconImageScale|IconImageScale]] ​  | Double ​  ​| ​   | This property gets and sets the scale of the image you want to draw.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​IsActive|IsActive]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | This property gets and sets the active status of the style. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​LabelAllLineParts|LabelAllLineParts]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets whether the labeler will label every part of a multi-part line.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​LabelAllPolygonParts|LabelAllPolygonParts]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets whether the labeler will label every part of a multi-part polygon. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​LabelPositions|LabelPositions]] ​  | Dictionary<​String,​[[ThinkGeo.MapSuite.PortableCore.WorldLabelingCandidate|WorldLabelingCandidate]]> ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | Gets a value represents a keyValuepair which is a feature id and label position of the feature ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​Mask|Mask]] ​  | [[ThinkGeo.MapSuite.PortableCore.AreaStyle|AreaStyle]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the AreaStyle used to draw a mask behind the text.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​MaskMargin|MaskMargin]] ​  | Int32   | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the margin around the text that will be used for the mask.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​MaskType|MaskType]] ​  | [[ThinkGeo.MapSuite.PortableCore.MaskType|MaskType]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  ​| ​   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​Name|Name]] ​  | String ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | This property gets and set the name of the style. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​NumericFormat|NumericFormat]] ​  | String ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the format that will be applied to the text which can be parsed to double type.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​OverlappingRule|OverlappingRule]] ​  | [[ThinkGeo.MapSuite.PortableCore.LabelOverlappingRule|LabelOverlappingRule]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets the rule that determines how overlapping labels are handled. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​PointPlacement|PointPlacement]] ​  | [[ThinkGeo.MapSuite.PortableCore.PointPlacement|PointPlacement]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets the location of the label for point features relative to the point. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​PolygonLabelingLocationMode|PolygonLabelingLocationMode]] ​  | [[ThinkGeo.MapSuite.PortableCore.PolygonLabelingLocationMode|PolygonLabelingLocationMode]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets the mode that determines how to locate polygon'​s labeling ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​RequiredColumnNames|RequiredColumnNames]] ​  | Collection<​String> ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  | This property gets the collection of fields that are required for the style. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​RotationAngle|RotationAngle]] ​  | Double ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the rotation angle of the item being positioned. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​SplineType|SplineType]] ​  | [[ThinkGeo.MapSuite.PortableCore.SplineType|SplineType]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | Gets or sets the SplineType for labeling. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​SuppressPartialLabels|SuppressPartialLabels]] ​  | Boolean ​  ​| ​   | This property gets and sets whether a partial label in the current extent will be drawn or not.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​TextColumnName|TextColumnName]] ​  | String ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the column name in the data that you want to get the text from.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​TextFormat|TextFormat]] ​  | String ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the format that will be applied to the text.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​TextLineSegmentRatio|TextLineSegmentRatio]] ​  | Double ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets the ratio required for the label length to match the line length. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​TextSolidBrush|TextSolidBrush]] ​  | [[ThinkGeo.MapSuite.PortableCore.GeoSolidBrush|GeoSolidBrush]] ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the SolidBrush that will be used to draw the text.   | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​XOffsetInPixel|XOffsetInPixel]] ​  | Single ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the X pixel offset for drawing each feature. ​  | +
-| {{wiki:​PublicProperty.gif|Public Property}}[[#​YOffsetInPixel|YOffsetInPixel]] ​  | Single ​  | [[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]] ​  | This property gets and sets the Y pixel offset for drawing each feature. ​  |+
  
-==== Protected Properties ==== +== Return Value == 
-^ Name ^ Return ^ DeclaringType ^ Summary ^ +  * Type:Void 
-| {{wiki:ProtectedProperty.gif|Protected Property}}[[#​AllowSpline|AllowSpline]] ​  | Boolean ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  | This property gets and sets whether line labels are allowed to spline around curved lines. ​  | +  * Description:N/A
-| {{wiki:ProtectedProperty.gif|Protected Property}}[[#​FiltersCore|FiltersCore]] ​  | Collection<​String> ​  | [[ThinkGeo.MapSuite.PortableCore.Style|Style]] ​  ​| ​   |+
  
-==== Public Events ==== +== Parameters ​== 
-^ Name ^ Event Arguments ^ DeclaringType ^ Summary ^ +  * //canvas// 
-| {{wiki:PublicEvent.gif|Public Event}}[[#​Formatted|Formatted]] ​  ​| ​[[ThinkGeo.MapSuite.PortableCore.FormattedPositionStyleEventArgs|FormattedPositionStyleEventArgs]]   | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  ​| ​   +    * Type:​[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-| {{wiki:PublicEvent.gif|Public Event}}[[#​Formatting|Formatting]] ​  | [[ThinkGeo.MapSuite.PortableCore.FormattingPositionStyleEventArgs|FormattingPositionStyleEventArgs]] ​  | [[ThinkGeo.MapSuite.PortableCore.PositionStyle|PositionStyle]] ​  ​| ​   |+    * Description:N/A
  
-===== Public Constructors ===== +  * //​drawingExtent//​ 
-==== IconStyle() ==== +    * Type:​[[ThinkGeo.MapSuite.Core.DrawingRectangleF|DrawingRectangleF]] 
-This is the constructor for the class. +    ​* ​Description:N/A
-=== Overloads === +
-This is the default constructorIf you use this, then you should set the properties manually+
-=== Remarks === +
-If you use this, then you should set the properties manually -- such as the column name, font, solid brush and the image. +
-=== Parameters === +
-^  Name ^  Type ^  ​Description ​^+
  
-[[#Public Constructors|Go Back]] +<div newline></div
-==== IconStyle(String,​ String, GeoFont, GeoSolidBrush) ==== +** {{wiki:​ProtectedMethod.gif|}} DrawCore(IEnumerable<Feature>,​GeoCanvas,​Collection<SimpleCandidate>,​Collection<​SimpleCandidate>​) **
-This is the constructor for the class. +
-=== Overloads === +
-This constructor allows you to pass in the path to the icon, along with the column name, font and solid brush to use. This is the most commonly used constructor. +
-=== Remarks === +
-This constructor allows you to pass in the path to the icon, along with the column name, font and solid brush to use. This is the most commonly used constructor. If you need to use an image from a stream, then you should use the constructor that takes a GeoImage. +
-=== Parameters === +
-^  Name ^  Type ^  Description ^ +
-| iconPathFilename ​  | String<!-- System.String --  | This parameter is the path and filename of the icon you want to use.   | +
-| textColumnName ​  | String<!-- System.String --  | This parameter is the column name from which to get the data for the text.   | +
-| textFont ​  | [[ThinkGeo.MapSuite.PortableCore.GeoFont|GeoFont]]<!-- ThinkGeo.MapSuite.PortableCore.GeoFont --  | This parameter is the font used to draw the text on the icon.   | +
-| textSolidBrush ​  | [[ThinkGeo.MapSuite.PortableCore.GeoSolidBrush|GeoSolidBrush]]<!-- ThinkGeo.MapSuite.PortableCore.GeoSolidBrush --  | This parameter is the solid brush that is used to draw the text on the icon.   |+
  
-[[#Public Constructors|Go Back]] +  * //This method draws the features on the canvas you provided.// 
-==== IconStyle(GeoImage,​ String, GeoFont, GeoSolidBrush) ==== +== Remarks ​== 
-This is the constructor for the class+  * //This overridden method is called from the concrete public method DrawIn this method, we take the features ​you passed in and draw them on the canvas you providedEach style (based on its properties) may draw each feature differentlyWhen overriding this method, consider each feature and its column data valuesYou can use the full power of the GeoCanvas ​to do the drawingIf you need column ​data for a feature, be sure to override ​the GetRequiredColumnNamesCore and add the columns you need to the collectionIn many of the styles, we add properties ​to allow the user to specify which field they need; then, in the GetRequiredColumnNamesCore,​ we read that property and add it to the collection.//
-=== Overloads === +
-This constructor allows you to use a GeoImage instead of specifying a path and filename of the iconThis is commonly used if the image comes from a stream. +
-=== Remarks === +
-This constructor allows ​you to use a GeoImage instead of specifying a path and filename of the iconThis is commonly used if the image comes from a stream. +
-=== Parameters === +
-^  Name ^  Type ^  Description ^ +
-| iconImage ​  | [[ThinkGeo.MapSuite.PortableCore.GeoImage|GeoImage]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoImage --> ​  | This parameter is the image to use in this style  | +
-| textColumnName ​  | String<​!-- System.String --> ​  | This parameter is the column ​name from which to get the data for the text  | +
-| textFont ​  | [[ThinkGeo.MapSuite.PortableCore.GeoFont|GeoFont]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoFont --> ​  | This parameter is the font used to draw the text on the icon.   | +
-| textSolidBrush ​  | [[ThinkGeo.MapSuite.PortableCore.GeoSolidBrush|GeoSolidBrush]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoSolidBrush --> ​  | This parameter is the solid brush that is used to draw the text on the icon  |+
  
-[[#Public Constructors|Go Back]] +== Return Value == 
-===== Protected Constructors ===== +  ​* ​Type:Void 
-===== Public Methods ===== +  * Description:None
-==== CloneDeep() ==== +
-Create a copy of style using the deep clone process. +
-=== Remarks === +
-The difference between deep clone and shallow clone is as follows: In shallow cloning, only the object is copied; the objects within it are not. By contrast, deep cloning copies the cloned object as well as all the objects within. +
-=== Return Value === +
-^ Return ​Type Description ​+
-| [[ThinkGeo.MapSuite.PortableCore.Style|Style]]<​!-- ThinkGeo.MapSuite.PortableCore.Style --> ​  | A cloned style. ​  |+
  
-=== Parameters ​=== +== Parameters == 
-^  Name ^  ​Type ​^  ​Description ​^+  ​* //​features//​ 
 +    * Type:​IEnumerable<​[[ThinkGeo.MapSuite.Core.Feature|Feature]]>​ 
 +    * Description:This parameter represents the features you want to draw on the canvas.
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.Style --> +  * //​canvas//​ 
-[[#Public Methods|Go Back]] +    * Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== Draw(IEnumerable<​BaseShape>,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​) ==== +    * Description:​This parameter represents ​the canvas you want to draw the features ​on.
-This method draws the shapes on the canvas you provided. +
-=== Remarks === +
-This method is the concrete wrapper for the abstract method DrawCore. In this method, we take the shapes you passed in and draw them on the canvas you provided. Each style (based ​on its properties) may draw each shape differently.+
  
-As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the methodIn this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needsIf you have questions about this, please contact our support team as we would be happy to work with you on extending our framework+  * //​labelsInThisLayer//​ 
-=== Return Value === +    * Type:​Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>​ 
-^ Return Type ^ Description ​+    ​* ​Description:The labels will be drawn in the current layer only.
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +  * //​labelsInAllLayers//​ 
-^  Name ^  ​Type ^  Description ^ +    ​* ​Type:Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>​ 
-| shapes ​  | IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.BaseShape|BaseShape]]><​!-- System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.PortableCore.BaseShape} --> ​  | This parameter represents the shapes you want to draw on the canvas. ​  | +    * Description:​The labels will be drawn in all layers.
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter represents the canvas you want to draw the shapes on.   | +
-| labelsInThisLayer ​  ​| ​Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]>​<!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in the current layer only.   | +
-| labelsInAllLayers ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  ​| ​The labels will be drawn in all layers. ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --+<div newline></​div
-[[#Public Methods|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} GetLabelingCandidateCore(Feature,​GeoCanvas) ​**
-==== Draw(IEnumerable<​Feature>, GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​==== +
-This method draws the features on the canvas you provided. +
-=== Remarks === +
-This method is the concrete wrapper for the abstract method DrawCore. In this method, we take the features you passed in and draw them on the canvas you provided. Each style (based on its properties) may draw each feature differently.+
  
-As this is concrete public method ​that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about thisplease contact our support team as we would be happy to work with you on extending our framework. +  * //This method determines which labels will be candidates for drawing.//​ 
-=== Return Value === +== Remarks == 
-^ Return Type ^ Description ^ +  * //This overridden method ​is called from the concrete public method ​GetLabelingCandidate. In this method, we determine if the feature passed in will be a candidate for drawing. If you have the grid method enabledthen we determine this by ensuring that only one label will be eligible per grid cellIn this way, we can ensure that labels always draw in the same place at the same scale.//
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +== Return Value == 
-^  Name ^  ​Type ​^  Description ^ +  ​Type:Collection<​[[ThinkGeo.MapSuite.Core.LabelingCandidate|LabelingCandidate]]> 
-| features ​  | IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]><!-- System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.PortableCore.Feature} --> ​  | This parameter represents the features you want to draw on the canvas. ​  | +  * Description:​This method returns a collection of labeling candidates.
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  ​| ​This parameter represents the canvas you want to draw the features on  | +
-| labelsInThisLayer ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in the current layer only.   | +
-| labelsInAllLayers ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in all layers. ​  |+
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.Style --> +== Parameters == 
-[[#Public Methods|Go Back]] +  * //​feature//​ 
-==== DrawSample(GeoCanvas) ==== +    * Type:[[ThinkGeo.MapSuite.Core.Feature|Feature]] 
-=== Return Value === +    ​* ​Description:This parameter represents the features you want to draw on the canvas.
-^ Return Type ^ Description ​+
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +  * //canvas// 
-^  Name ^  ​Type ^  Description ^ +    ​* ​Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-| canvas ​  ​| ​[[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  ​| ​   |+    * Description:​This parameter represents the canvas you want to draw the features on.
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --+<div newline></​div
-[[#Public Methods|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} Format(String,BaseShape**
-==== DrawSample(GeoCanvasDrawingRectangleF==== +
-This method draws a sample feature on the canvas you provided. +
-=== Remarks === +
-This method is the concrete wrapper for the abstract method DrawSampleCore. In this method we draw a sample style on the canvas you provided. This is typically used to display a legend or other sample area.+
  
-As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework. +  * //N/A// 
-=== Return Value === +== Remarks ​== 
-^ Return Type ^ Description ^ +  * //N/A//
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +== Return Value == 
-^  Name ^  ​Type ​ ​Description ​+  ​Type:String 
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter represents the canvas you want to draw the features on.   | +  Description:N/A
-| drawingExtent ​  | [[ThinkGeo.MapSuite.PortableCore.DrawingRectangleF|DrawingRectangleF]]<​!-- ThinkGeo.MapSuite.PortableCore.DrawingRectangleF --> ​  ​| ​   |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --> +== Parameters ​== 
-[[#Public Methods|Go Back]] +  * //text// 
-==== Equals(Object) ​==== +    ​* ​Type:String 
-=== Return Value === +    ​* Description:​N/​A
-^ Return ​Type ^ Description ^ +
-| Boolean<​!-- System.Boolean --> ​  ​| ​   |+
  
-=== Parameters === +  * //​labeledShape//​ 
-^  Name ^  ​Type ^  Description ^ +    ​* ​Type:[[ThinkGeo.MapSuite.Core.BaseShape|BaseShape]] 
-| obj   | Object<​!-- System.Object --> ​  |    ​|+    * Description:​N/​A
  
-<!-- System.Object --+<div newline></​div
-[[#Public Methods|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} FormatCore(String,​BaseShape**
-==== GetHashCode() ==== +
-=== Return Value === +
-^ Return Type ^ Description ^ +
-| Int32<​!-- System.Int32 --> ​  ​| ​   |+
  
-=== Parameters === +  * //N/A// 
-^  Name ^  Type ^  Description ^+== Remarks ​== 
 +  ​* //N/A//
  
-<!-- System.Object --> +== Return Value == 
-[[#Public Methods|Go Back]] +  * Type:String 
-==== GetRequiredColumnNames() ​==== +  * Description:​N/​A
-This method returns the column data for each feature that is required for the style to properly draw. +
-=== Remarks === +
-This method is the concrete wrapper for the abstract method GetRequiredColumnNamesCore. In this method, we return the column names that are required for the style to draw the feature properly. For example, if you have a style that colors areas blue when a certain column value is over 100, then you need to be sure you include that column name. This will ensure that the column data is returned to you in the feature when it is ready to draw.+
  
-In many of the styles, we add properties to allow the user to specify which field they need; then, in the GetRequiredColumnNamesCore we read that property and add it to the collection.+== Parameters == 
 +  * //text// 
 +    * Type:​String 
 +    * Description:​N/​A
  
-As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework. +  * //​labeledShape//​ 
-=== Return Value === +    ​* ​Type:[[ThinkGeo.MapSuite.Core.BaseShape|BaseShape]] 
-^ Return ​Type ^ Description ^ +    * Description:​N/​A
-| Collection<​String><​!-- System.Collections.ObjectModel.Collection{System.String} --> ​  | This method returns a collection of column names that the style needs. ​  |+
  
-=== Parameters === +<div newline></​div>​ 
-^  Name ^  Type ^  Description ^+** {{wiki:​ProtectedMethod.gif|}} OnFormatting(FormattingPositionStyleEventArgs) **
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --> +  * //N/A// 
-[[#Public Methods|Go Back]] +== Remarks ​== 
-==== GetType() ==== +  * //N/A//
-=== Return Value === +
-^ Return Type ^ Description ^ +
-| Type<!-- System.Type --> ​  ​| ​   |+
  
-=== Parameters === +== Return Value == 
-^  Name ^  ​Type ​ ​Description ​^+  ​Type:Void 
 +  Description:N/A
  
-<!-- System.Object --> +== Parameters ​== 
-[[#Public Methods|Go Back]] +  * //e// 
-==== ToString() ​==== +    ​* ​Type:​[[ThinkGeo.MapSuite.Core.FormattingPositionStyleEventArgs|FormattingPositionStyleEventArgs]] 
-=== Return Value === +    * Description:​N/​A
-^ Return ​Type ^ Description ^ +
-| String<​!-- System.String --> ​  |    ​|+
  
-=== Parameters === +<div newline></​div>​ 
-^  Name ^  Type ^  Description ^+** {{wiki:​ProtectedMethod.gif|}} OnFormatted(FormattedPositionStyleEventArgs) **
  
-<!-- System.Object --> +  * //N/A// 
-[[#Public Methods|Go Back]] +== Remarks == 
-===== Protected Methods ===== +  * //N/A//
-==== CheckDuplicate(LabelingCandidate,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​) ==== +
-This method will determine whether the label will be suppressed because it is a duplicate. +
-=== Remarks ​=== +
-This method is the concrete wrapper for the abstract method CheckDuplicateCore. This method will determine if the label will be suppressed because it is a duplicate. It also takes into consideration the duplicate rules for the class. So, for example, if we set to allow duplicates, then the method will always return false. If the class is set to not allow duplicates and this label is a duplicate, then it will return true and be suppressed.+
  
-As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework. +== Return Value == 
-=== Return Value === +  ​* ​Type:Void 
-^ Return ​Type Description ​+  * Description:N/A
-| Boolean<​!-- System.Boolean --> ​  | This method returns whether the label will be suppressed as a duplicate. ​  |+
  
-=== Parameters ​=== +== Parameters == 
-^  Name ^  ​Type ​^  Description ^ +  ​* //e// 
-| labelingCandidate ​  ​| ​[[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]]<!-- ThinkGeo.MapSuite.PortableCore.LabelingCandidate --> ​  | This parameter is the labeling candidate that will be checked to determine if it is a duplicate. ​  | +    * Type:[[ThinkGeo.MapSuite.Core.FormattedPositionStyleEventArgs|FormattedPositionStyleEventArgs]] 
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter is the canvas used for calculations. ​  | +    * Description:​N/​A
-| labelsInThisLayer ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in the current layer only.   | +
-| labelsInAllLayers ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in all layers. ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +<div newline></div
-[[#​Protected Methods|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} GetRequiredColumnNamesCore() **
-==== CheckDuplicateCore(LabelingCandidate,​ GeoCanvas, Collection<SimpleCandidate>, Collection<​SimpleCandidate>​) ==== +
-This method will determine if the label will be suppressed because it is a duplicate. +
-=== Remarks === +
-This overridden method is called from the concrete public method CheckDuplicate. This method will determine if the label will be suppressed because it is a duplicate. It also takes into consideration the duplicate rules for the class. So, for example, if we set to allow duplicates, then the method will always return false. If the class is set to not allow duplicates and this label is a duplicate, then it will return true and be suppressed. +
-=== Return Value === +
-^ Return Type ^ Description ^ +
-| Boolean<​!-- System.Boolean --> ​  | This method returns whether the label will be suppressed as a duplicate. ​  |+
  
-=== Parameters === +  * //N/A// 
- Name ^  Type ^  Description ^ +== Remarks ​== 
-| labelingCandidate ​  | [[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]]<​!-- ThinkGeo.MapSuite.PortableCore.LabelingCandidate --> ​  | This parameter is the labeling candidate that will be checked to determine if it is a duplicate. ​  | +  ​* //N/A//
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter is the canvas that will be used for calculations. ​  | +
-| labelsInThisLayer ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in the current layer only.   | +
-| labelsInAllLayers ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in all layers. ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Return Value == 
-[[#​Protected Methods|Go Back]] +  * Type:Collection<​String
-==== CheckOverlapping(LabelingCandidate,​ GeoCanvas, ​Collection<​SimpleCandidate>, Collection<​SimpleCandidate>​) ==== +  * Description:​N/​A
-This method will determine if the label will be suppressed because of overlapping. +
-=== Remarks === +
-This method is the concrete wrapper for the abstract method CheckOverlappingCore. This method will determine if the label will be suppressed because it is overlapping another label. It also takes into consideration the overlapping rules for the class. So, for example, if we set to allow overlap, then the method will always return false. If the class is set to not allow overlap and this label is overlapping,​ then it will return true and be suppressed.+
  
-As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework. +== Parameters ​== 
-=== Return Value === +<div newline></​div>​ 
-^ Return Type ^ Description ^ +** {{wiki:​ProtectedMethod.gif|}} FilterFeatures(IEnumerable<Feature>,GeoCanvas) **
-Boolean<!-- System.Boolean --  | This method returns whether the label will be suppressed because of overlapping. ​  |+
  
-=== Parameters === +  * //N/A// 
- Name ^  Type ^  Description ^ +== Remarks ​== 
-| labelingCandidate ​  | [[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]]<​!-- ThinkGeo.MapSuite.PortableCore.LabelingCandidate --> ​  | This parameter is the labeling candidate that will be checked to determine if it is overlapping. ​  | +  ​* //N/A//
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter is the canvas that will be used for calculations. ​  | +
-| labelsInThisLayer ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in the current layer only.   | +
-| labelsInAllLayers ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in all layers. ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Return Value == 
-[[#​Protected Methods|Go Back]] +  * Type:​Collection<[[ThinkGeo.MapSuite.Core.Feature|Feature]]> 
-==== CheckOverlappingCore(LabelingCandidate,​ GeoCanvas, Collection<​SimpleCandidate>, Collection<​SimpleCandidate>​) ==== +  ​* ​Description:N/A
-This method will determine whether the label will be suppressed because of overlapping. +
-=== Remarks === +
-This overridden method is called from the concrete public method CheckOverlapping. This method will determine if the label will be suppressed because it is overlapping another label. It also takes into consideration the overlapping rules for the class. So, for example, if we set to allow overlap, then the method will always return false. If the class is set to not allow overlap and this label is overlapping,​ then it will return true and be suppressed. +
-=== Return Value === +
-^ Return Type ^ Description ​+
-| Boolean<​!-- System.Boolean --> ​  | This method returns whether the label will be suppressed because of overlapping. ​  |+
  
-=== Parameters ​=== +== Parameters == 
-^  Name ^  ​Type ​^  Description ^ +  ​* //​features//​ 
-| labelingCandidate ​  | [[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]]<!-- ThinkGeo.MapSuite.PortableCore.LabelingCandidate --> ​  | This parameter is the labeling candidate that will be checked to determine if it is overlapping. ​  | +    * Type:​IEnumerable<​[[ThinkGeo.MapSuite.Core.Feature|Feature]]> 
-| canvas ​  ​| ​[[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --  | This parameter is the canvas that will be used for calculations. ​  | +    * Description:​N/​A
-| labelsInThisLayer ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in the current layer only.   | +
-| labelsInAllLayers ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in all layers. ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //canvas// 
-[[#​Protected Methods|Go Back]] +    * Type:​[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== CloneDeepCore() ==== +    * Description:​N/​A
-Create a copy of style using the deep clone process. The default implementation method uses serialization. +
-=== Remarks === +
-The difference between deep clone and shallow clone is as followsIn shallow cloning, only the object is copied; the objects within it are not. By contrast, deep cloning copies the cloned object as well as all the objects within. +
-=== Return Value === +
-^ Return Type ^ Description ^ +
-[[ThinkGeo.MapSuite.PortableCore.Style|Style]]<!-- ThinkGeo.MapSuite.PortableCore.Style --> ​  ​| ​cloned style. ​  |+
  
-=== Parameters === +<div newline></​div>​ 
-^  Name ^  Type ^  Description ^+** {{wiki:​ProtectedMethod.gif|}} FilterFeaturesCore(IEnumerable<​Feature>,​GeoCanvas) **
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --> +  * //N/A// 
-[[#​Protected Methods|Go Back]] +== Remarks == 
-==== DrawCore(IEnumerable<​Feature>,​ GeoCanvas, Collection<​SimpleCandidate>,​ Collection<​SimpleCandidate>​) ==== +  * //N/A//
-This method draws the features on the canvas you provided. +
-=== Remarks ​=== +
-This overridden method is called from the concrete public method Draw. In this method, we take the features you passed in and draw them on the canvas you provided. Each style (based on its properties) may draw each feature differently.+
  
-When overriding this method, consider each feature and its column data values. You can use the full power of the GeoCanvas to do the drawing. If you need column data for a feature, be sure to override the GetRequiredColumnNamesCore and add the columns you need to the collection. In many of the styles, we add properties to allow the user to specify which field they need; then, in the GetRequiredColumnNamesCore,​ we read that property and add it to the collection. +== Return Value == 
-=== Return Value === +  ​* ​Type:Collection<[[ThinkGeo.MapSuite.Core.Feature|Feature]]> 
-^ Return ​Type ^ Description ^ +  * Description:​N/​A
-| Void<!-- System.Void --  |    |+
  
-=== Parameters ​=== +== Parameters == 
-^  Name ^  ​Type ​^  Description ^ +  ​* //​features//​ 
-| features ​  ​| ​IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]>​<!-- System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.PortableCore.Feature} --> ​  | This parameter represents the features you want to draw on the canvas. ​  | +    * Type:IEnumerable<​[[ThinkGeo.MapSuite.Core.Feature|Feature]]>​ 
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter represents the canvas you want to draw the features on.   | +    * Description:​N/​A
-| labelsInThisLayer ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in the current layer only.   | +
-| labelsInAllLayers ​  | Collection<​[[ThinkGeo.MapSuite.PortableCore.SimpleCandidate|SimpleCandidate]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.SimpleCandidate} --> ​  | The labels will be drawn in all layers. ​  |+
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.Style(overriden) --> +  * //​canvas//​ 
-[[#​Protected Methods|Go Back]] +    * Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== DrawSampleCore(GeoCanvas,​ DrawingRectangleF) ==== +    ​* ​Description:N/A
-=== Return Value === +
-^ Return Type ^ Description ​+
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +<div newline></​div
-^  Name ^  Type ^  Description ^ +** {{wiki:​ProtectedMethod.gif|}} GetLabelingCandidates(Feature,​GeoCanvas) **
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --  |    | +
-| drawingExtent ​  | [[ThinkGeo.MapSuite.PortableCore.DrawingRectangleF|DrawingRectangleF]]<​!-- ThinkGeo.MapSuite.PortableCore.DrawingRectangleF --> ​  ​| ​   ​|+
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style(overriden) --> +  * //N/A// 
-[[#​Protected Methods|Go Back]] +== Remarks == 
-==== FilterFeaturesCore(IEnumerable<​Feature>,​ GeoCanvas) ==== +  * //N/A//
-This method filters the features based on the grid size to facilitate deterministic labeling. +
-=== Remarks ​=== +
-This overridden method is called from the concrete public method FilterFeatures. In this method, we filter the features based on the grid size to facilitate deterministic labeling. +
-=== Return Value === +
-^ Return Type ^ Description ^ +
-| Collection<​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]><​!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.Feature} --> ​  | This method returns the features that will be considered for labeling. ​  |+
  
-=== Parameters === +== Return Value == 
-^  Name ^  ​Type ​^  Description ^ +  ​Type:Collection<​[[ThinkGeo.MapSuite.Core.LabelingCandidate|LabelingCandidate]]> 
-| features ​  | IEnumerable<​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]><!-- System.Collections.Generic.IEnumerable{ThinkGeo.MapSuite.PortableCore.Feature} --> ​  | This parameter represents the features that will be filtered. ​  | +  * Description:​N/​A
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter is the canvas that will be used for calculating font sizes. ​  |+
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Parameters == 
-[[#​Protected Methods|Go Back]] +  * //​feature//​ 
-==== Finalize() ==== +    * Type:[[ThinkGeo.MapSuite.Core.Feature|Feature]] 
-=== Return Value === +    ​* ​Description:N/A
-^ Return Type ^ Description ​+
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +  * //canvas// 
-^  Name ^  ​Type ^  ​Description ​^+    ​* ​Type:​[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
 +    * Description:N/A
  
-<!-- System.Object --+<div newline></​div
-[[#​Protected Methods|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} CheckDuplicate(LabelingCandidate,GeoCanvas,​Collection<SimpleCandidate>,​Collection<​SimpleCandidate>​) **
-==== Format(StringBaseShape) ==== +
-=== Return Value === +
-^ Return Type ^ Description ^ +
-| String<!-- System.String --  |    |+
  
-=== Parameters === +  * //N/A// 
- Name ^  Type ^  Description ^ +== Remarks ​== 
-| text   | String<​!-- System.String --> ​  ​| ​   | +  ​* //N/A//
-| labeledShape ​  | [[ThinkGeo.MapSuite.PortableCore.BaseShape|BaseShape]]<​!-- ThinkGeo.MapSuite.PortableCore.BaseShape --> ​  ​| ​   |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Return Value == 
-[[#​Protected Methods|Go Back]] +  ​* ​Type:Boolean 
-==== FormatCore(String,​ BaseShape) ==== +  * Description:N/A
-=== Return Value === +
-^ Return ​Type Description ​+
-| String<​!-- System.String --> ​  ​| ​   |+
  
-=== Parameters ​=== +== Parameters == 
- Name ^  Type ^  Description ^ +  ​* //​labelingCandidate//​ 
-| text   | String<​!-- System.String --> ​  ​| ​   +    ​* Type:[[ThinkGeo.MapSuite.Core.LabelingCandidate|LabelingCandidate]] 
-| labeledShape ​  ​| ​[[ThinkGeo.MapSuite.PortableCore.BaseShape|BaseShape]]<!-- ThinkGeo.MapSuite.PortableCore.BaseShape --> ​  ​| ​   |+    * Description:​N/​A
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //canvas// 
-[[#​Protected Methods|Go Back]] +    ​* ​Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== GetLabelingCandidateCore(Feature,​ GeoCanvas) ==== +    * Description:​N/​A
-This method determines which labels will be candidates for drawing. +
-=== Remarks === +
-This overridden method is called from the concrete public method GetLabelingCandidate. In this method, we determine if the feature passed in will be a candidate for drawing. If you have the grid method enabled, then we determine this by ensuring that only one label will be eligible per grid cell. In this way, we can ensure that labels always draw in the same place at the same scale. +
-=== Return Value === +
-^ Return ​Type ^ Description ^ +
-| Collection<​[[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]]><!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.LabelingCandidate} --> ​  | This method returns a collection of labeling candidates. ​  |+
  
-=== Parameters === +  * //​labelsInThisLayer//​ 
-^  Name ^  ​Type ^  Description ^ +    ​* ​Type:​Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]> 
-| feature ​  ​| ​[[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]<!-- ThinkGeo.MapSuite.PortableCore.Feature --  | This parameter represents the features you want to draw on the canvas. ​  | +    * Description:​N/​A
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter represents the canvas you want to draw the features on.   |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle(overriden) --> +  * //​labelsInAllLayers//​ 
-[[#​Protected Methods|Go Back]] +    * Type:​Collection<[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]> 
-==== GetLabelingCandidates(Feature,​ GeoCanvas) ==== +    * Description:​N/​A
-This method determines whether the specified feature is a good candidate to be labeled, based on the labeling properties set. +
-=== Remarks === +
-This method is the concrete wrapper for the abstract method GetLabelingCanidatesCore. This method determines if the feature passed in is a good candidate to be labeled based on the labeling properties set.+
  
-As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the methodIn this waywe leave our framework open on our endbut also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework. +<div newline></​div>​ 
-=== Return Value === +** {{wiki:​ProtectedMethod.gif|}} CheckDuplicateCore(LabelingCandidate,GeoCanvas,​Collection<​SimpleCandidate>,Collection<SimpleCandidate>) **
-^ Return Type ^ Description ^ +
-Collection<​[[ThinkGeo.MapSuite.PortableCore.LabelingCandidate|LabelingCandidate]]><!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.LabelingCandidate} --  | A collection of labeling candidates. ​  |+
  
-=== Parameters === +  * //N/A// 
- Name ^  Type ^  Description ^ +== Remarks ​== 
-| feature ​  | [[ThinkGeo.MapSuite.PortableCore.Feature|Feature]]<​!-- ThinkGeo.MapSuite.PortableCore.Feature --> ​  | This parameter is the feature that will be considered as a labeling candidate. ​  | +  ​* //N/A//
-| canvas ​  | [[ThinkGeo.MapSuite.PortableCore.GeoCanvas|GeoCanvas]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoCanvas --> ​  | This parameter is the canvas that will be used to draw the feature. This method will not draw on this canvas, but rather will use it to determine font size, etc.   |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Return Value == 
-[[#​Protected Methods|Go Back]] +  ​* ​Type:Boolean 
-==== GetRequiredColumnNamesCore() ==== +  * Description:N/A
-=== Return Value === +
-^ Return ​Type Description ​+
-| Collection<​String><​!-- System.Collections.ObjectModel.Collection{System.String} --> ​  ​| ​   |+
  
-=== Parameters ​=== +== Parameters == 
-^  Name ^  ​Type ​^  ​Description ​^+  ​* //​labelingCandidate//​ 
 +    * Type:​[[ThinkGeo.MapSuite.Core.LabelingCandidate|LabelingCandidate]] 
 +    * Description:N/A
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.Style(overriden) --> +  * //​canvas//​ 
-[[#​Protected Methods|Go Back]] +    * Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== MemberwiseClone() ==== +    ​* ​Description:N/A
-=== Return Value === +
-^ Return Type ^ Description ​+
-| Object<​!-- System.Object --> ​  ​| ​   |+
  
-=== Parameters === +  * //​labelsInThisLayer//​ 
-^  Name ^  ​Type ^  ​Description ​^+    ​* ​Type:​Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>​ 
 +    * Description:N/A
  
-<!-- System.Object --> +  * //​labelsInAllLayers//​ 
-[[#Protected Methods|Go Back]] +    * Type:​Collection<[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]> 
-==== OnFormatted(FormattedPositionStyleEventArgs) ==== +    ​* ​Description:N/A
-=== Return Value === +
-^ Return Type ^ Description ​+
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +<div newline></​div>​ 
-^  Name ^  Type ^  Description ^ +** {{wiki:​ProtectedMethod.gif|}} CheckOverlapping(LabelingCandidate,​GeoCanvas,​Collection<SimpleCandidate>,​Collection<​SimpleCandidate>​) **
-| e   | [[ThinkGeo.MapSuite.PortableCore.FormattedPositionStyleEventArgs|FormattedPositionStyleEventArgs]]<!-- ThinkGeo.MapSuite.PortableCore.FormattedPositionStyleEventArgs --  |    |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //N/A// 
-[[#​Protected Methods|Go Back]] +== Remarks ​== 
-==== OnFormatting(FormattingPositionStyleEventArgs) ==== +  * //N/A//
-=== Return Value === +
-^ Return Type ^ Description ^ +
-| Void<!-- System.Void --> ​  ​| ​   |+
  
-=== Parameters === +== Return Value == 
-^  Name ^  ​Type ​ ​Description ​+  ​Type:Boolean 
-| e   | [[ThinkGeo.MapSuite.PortableCore.FormattingPositionStyleEventArgs|FormattingPositionStyleEventArgs]]<​!-- ThinkGeo.MapSuite.PortableCore.FormattingPositionStyleEventArgs --> ​  ​| ​   |+  Description:N/A
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Parameters ​== 
-[[#​Protected Methods|Go Back]] +  * //​labelingCandidate//​ 
-===== Public Properties ===== +    ​* ​Type:[[ThinkGeo.MapSuite.Core.LabelingCandidate|LabelingCandidate]] 
-==== Advanced ==== +    * Description:​N/​A
-This property gets the advanced properties of the class. +
-=== Remarks === +
-The advanced properties have been consolidated in the Advanced property. This way, the standard options are more easily visible and the advanced options are hidden away. +
-=== Return Value === +
-^ Return ​Type +
-[[ThinkGeo.MapSuite.PortableCore.TextStyleAdvanced|TextStyleAdvanced]]<!-- ThinkGeo.MapSuite.PortableCore.TextStyleAdvanced --> ​  |+
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //​canvas//​ 
-[[#Public Properties|Go Back]] +    * Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== AllowLineCarriage ==== +    * Description:​N/​A
-This property gets and sets whether the labeler will allow carriage returns to be inserted. +
-=== Remarks === +
-This property enables the labeler to split long labels into multiple lines if need be. For instance, if you have a lake whose name is "​Southern Homestead Lake," then the labeler may try and break the name onto multiple lines in order to better label the feature. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //​labelsInThisLayer//​ 
-[[#Public Properties|Go Back]] +    * Type:​Collection<[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]> 
-==== BestPlacement ==== +    * Description:​N/​A
-This property gets and sets whether the labeler will attempt to change the label position to avoid overlapping for point-based features. +
-=== Remarks === +
-The positioning of point labels is mainly determined by the PointPlacement property. This allows you place the text to the right, top, bottom, etc. of the point. In some cases, placing the text in a certain place will cause many labels to be suppressed when the points are dense. This property allows you to override the PointPlacement property and allow the labeler to try other locations, if the default location would cause the label to be suppressed. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //​labelsInAllLayers//​ 
-[[#Public Properties|Go Back]] +    ​* ​Type:Collection<​[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]> 
-==== CustomTextStyles ==== +    * Description:​N/​A
-This property returns a collection of area styles allowing you to stack multiple area styles on top of each other. +
-=== Remarks === +
-Using this collection, you can stack multiple area styles on top of each other. When we draw the features, we will draw them in order that they exist in the collection. You can use these stacks to create drop shadow effects, multiple colored outlines, etc. +
-=== Return Value === +
-^ Return ​Type +
-Collection<​[[ThinkGeo.MapSuite.PortableCore.TextStyle|TextStyle]]><!-- System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.PortableCore.TextStyle} --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --+<div newline></​div
-[[#Public Properties|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} CheckOverlappingCore(LabelingCandidate,GeoCanvas,​Collection<SimpleCandidate>,​Collection<​SimpleCandidate>​) **
-==== DateFormat ==== +
-This property gets and sets the format that will be applied to the text which can be parsed to DateTime type. +
-=== Remarks === +
-With this propertyyou can apply formats to the text that is retrieved from the feature. +
-=== Return Value === +
-^ Return Type ^ +
-| String<!-- System.String --  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks ​== 
-==== DrawingLevel ==== +  * //N/A//
-Gets or sets the DrawingLavel for this style. +
-=== Return Value === +
-^ Return Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.DrawingLevel|DrawingLevel]]<​!-- ThinkGeo.MapSuite.PortableCore.DrawingLevel --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +== Return Value == 
-[[#Public Properties|Go Back]] +  ​* ​Type:Boolean 
-==== DuplicateRule ==== +  * Description:​N/​A
-This property gets and sets the rule that determines how duplicate labels are handled. +
-=== Remarks === +
-There are three ways to handle duplicate label names. The first is to suppress all duplicates, which means if there are two street segments with the same name then only one will be drawn. The second way is to suppress duplicate labels only if they are in one quarter of the screen. In this way, the screen will be divided into four quadrants, and if the two duplicate labels are in different quadrants, then they will both draw. The last way is to draw all duplicates. +
-=== Return Value === +
-^ Return ​Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.LabelDuplicateRule|LabelDuplicateRule]]<​!-- ThinkGeo.MapSuite.PortableCore.LabelDuplicateRule --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Parameters ​== 
-[[#Public Properties|Go Back]] +  * //​labelingCandidate//​ 
-==== Filters ​==== +    ​* ​Type:[[ThinkGeo.MapSuite.Core.LabelingCandidate|LabelingCandidate]] 
-=== Return Value === +    * Description:​N/​A
-^ Return ​Type +
-| Collection<​String><​!-- System.Collections.ObjectModel.Collection{System.String} --> ​  |+
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.Style --> +  * //​canvas//​ 
-[[#Public Properties|Go Back]] +    * Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== FittingLineInScreen ==== +    * Description:​N/​A
-This property gets and sets whether the labeler will try to fit the label as best as it can on the visible part of a line on the screen. +
-=== Remarks === +
-label will normally be displayed in the center of a line. If only a small piece of the line is visible on the screen, we cannot see it's label by default. If we set this property to ture though, the label will be displayed in the center of that piece in screen. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //​labelsInThisLayer//​ 
-[[#Public Properties|Go Back]] +    * Type:​Collection<[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]> 
-==== FittingPolygon ==== +    * Description:​N/​A
-This property gets and sets whether the labeler will try to fit the label as best as it can within the boundary of a polygon. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //​labelsInAllLayers//​ 
-[[#Public Properties|Go Back]] +    * Type:​Collection<[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]> 
-==== FittingPolygonFactor ==== +    * Description:​N/​A
-This property gets and sets the factor to which it will keep the label inside of the polygon. +
-=== Return Value === +
-^ Return Type ^ +
-| Double<​!-- System.Double --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --+<div newline></​div
-[[#Public Properties|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} GetLabelingCandidateForOnePolygon(PolygonShape,String,GeoCanvas) **
-==== FittingPolygonInScreen ==== +
-This property gets and sets whether the labeler will try to fit the label as best as it can on the visible part of a polygon on the screen. +
-=== Remarks === +
-A label will normally be displayed in the center of a polygon. If only a small piece of the polygon is visible on the screenwe cannot see it's label by default. If we set this property to ture thoughthe label will be displayed in the center of that piece in screen. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks ​== 
-==== Font ==== +  * //N/A//
-This property gets and sets the font that will be used to draw the text. +
-=== Return Value === +
-^ Return Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.GeoFont|GeoFont]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoFont --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +== Return Value == 
-[[#Public Properties|Go Back]] +  ​* ​Type:[[ThinkGeo.MapSuite.Core.LabelingCandidate|LabelingCandidate]] 
-==== ForceHorizontalLabelForLine ==== +  * Description:​N/​A
-This property gets and sets whether we should force horizontal labeling for lines. +
-=== Remarks === +
-Normally, lines are labeled in the direction of the line. There may be some cases, however, when you want to have the line labeled horizontally regardless of the line's direction. In such a case, you can set this property to force the lines to be labeled horizontally. +
-=== Return Value === +
-^ Return ​Type +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +== Parameters ​== 
-[[#Public Properties|Go Back]] +  * //polygon// 
-==== ForceLineCarriage ​==== +    * Type:​[[ThinkGeo.MapSuite.Core.PolygonShape|PolygonShape]] 
-This property gets and sets whether the labeler will force carriage returns to be inserted. +    * Description:​N/​A
-=== Remarks === +
-This property forces the labeler to split long labels into multiple linesFor instance, if you have a lake whose name is "​Southern Homestead Lake," then the labeler will break the name onto multiple lines in order to better label the feature. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //text// 
-[[#Public Properties|Go Back]] +    ​* ​Type:String 
-==== GridSize ==== +    * Description:​N/​A
-This property gets and sets the grid size used for deterministic labeling. +
-=== Remarks === +
-The grid size determines how many labels will be considered as candidates for drawing. The smaller the grid size, the higher the density of candidates. Making the grid size too small may have a performance impact. +
-=== Return Value === +
-^ Return ​Type ^ +
-| Int32<​!-- System.Int32 --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //canvas// 
-[[#Public Properties|Go Back]] +    ​* ​Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]] 
-==== HaloPen ==== +    * Description:​N/​A
-This property gets and sets the halo pen you may use to draw a halo around the text. +
-=== Remarks === +
-The halo pen allows you to draw a halo effect around the text, making it stand out more on a busy background. +
-=== Return Value === +
-^ Return ​Type +
-[[ThinkGeo.MapSuite.PortableCore.GeoPen|GeoPen]]<!-- ThinkGeo.MapSuite.PortableCore.GeoPen --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --+<div newline></​div
-[[#Public Properties|Go Back]] +** {{wiki:​ProtectedMethod.gif|}} CloneDeepCore() **
-==== IconFilePathName ==== +
-This property gets and sets the filename and path for the image you want to use in the style. +
-=== Remarks === +
-You can also optionally use the IconImage property if the image you want to use is derived from a stream. +
-=== Return Value === +
-^ Return Type ^ +
-| String<​!-- System.String --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.IconStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== IconImage ==== +  * //N/A//
-This property gets and sets the GeoImage you want to use for the image. +
-=== Remarks ​=== +
-You will typically want to use this property if your image is derived from a stream. Otherwise, you can use the IconFilePathName property to specify where the icon is located and we will handle the rest. +
-=== Return Value === +
-^ Return Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.GeoImage|GeoImage]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoImage --> ​  |+
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.IconStyle --> +== Return Value == 
-[[#Public Properties|Go Back]] +  * Type:[[ThinkGeo.MapSuite.Core.Style|Style]] 
-==== IconImageScale ==== +  * Description:​N/​A
-This property gets and sets the scale of the image you want to draw. +
-=== Remarks === +
-This property allows you to scale the image up and down depending on how large or small you want it. It can be changed dynamically,​ so you could change it at every scale level to resize the bitmap based on the current scale. ​scale of 1 would be the original size, while a scale of 2 would double the size. A scale of .5 would reduce the size of the image by half, and so on. +
-=== Return Value === +
-^ Return Type ^ +
-| Double<​!-- System.Double --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.IconStyle --> +== Parameters ​== 
-[[#Public Properties|Go Back]] +<div newline></​div>​ 
-==== IsActive ​==== +** {{wiki:​ProtectedMethod.gif|}} Finalize() **
-This property gets and sets the active status of the style. +
-=== Remarks === +
-If the style is not active then it will not draw. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== LabelAllLineParts ==== +  * //N/A//
-This property gets and sets whether the labeler will label every part of a multi-part line. +
-=== Remarks ​=== +
-In some cases, you may want to label all of the parts of a multi-part line, while in other cases you may not. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Return Value == 
-[[#Public Properties|Go Back]] +  ​* ​Type:Void 
-==== LabelAllPolygonParts ==== +  * Description:​N/​A
-This property gets and sets whether the labeler will label every part of a multi-part polygon. +
-=== Remarks === +
-In some cases, you may want to label all of the parts of a multi-part polygon, while in other cases you may not. For example, you may have a series of lakes where you do want to label each polygon. In another case, you may have a country with many small islands and in this case you only want to label the largest polygon. +
-=== Return Value === +
-^ Return ​Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +== Parameters ​== 
-[[#Public Properties|Go Back]] +<div newline></div> 
-==== LabelPositions ​==== +** {{wiki:​ProtectedMethod.gif|}} MemberwiseClone() **
-Gets a value represents a keyValuepair which is a feature id and label position of the feature +
-=== Return Value === +
-^ Return Type ^ +
-| Dictionary<String,​[[ThinkGeo.MapSuite.PortableCore.WorldLabelingCandidate|WorldLabelingCandidate]]><!-- System.Collections.Generic.Dictionary{System.String,​ThinkGeo.MapSuite.PortableCore.WorldLabelingCandidate--> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== Mask ==== +  * //N/A//
-This property gets and sets the AreaStyle used to draw a mask behind the text. +
-=== Remarks ​=== +
-mask is a plate behind the text that is rectangular and slightly larger than the width and height of the text. It allows the label to stand out well on a busy background. You can also try the HaloPen property instead of the mask, if the mask effect is too pronounced. +
-=== Return Value === +
-^ Return Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.AreaStyle|AreaStyle]]<​!-- ThinkGeo.MapSuite.PortableCore.AreaStyle --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +== Return Value == 
-[[#Public Properties|Go Back]] +  ​* ​Type:Object 
-==== MaskMargin ==== +  * Description:​N/​A
-This property gets and sets the margin around the text that will be used for the mask. +
-=== Remarks === +
-This determines how much larger the mask is than the text, in pixels. +
-=== Return Value === +
-^ Return ​Type ^ +
-| Int32<​!-- System.Int32 --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +== Parameters ​== 
-[[#Public Properties|Go Back]] +<div newline></​div>​ 
-==== MaskType ​==== +==== Public Properties ​==== 
-=== Return Value === +** {{wiki:​PublicProperty.gif|}} IconFilePathName **
-^ Return Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.MaskType|MaskType]]<​!-- ThinkGeo.MapSuite.PortableCore.MaskType --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //This property gets and sets the filename and path for the image you want to use in the style.// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== Name ==== +  * //You can also optionally use the IconImage property if the image you want to use is derived from a stream.// 
-This property gets and set the name of the style. +== Return Value == 
-=== Remarks ​=== +  ​* ​Type:String
-This name is not used by the system; it is only for the developer. However, it can be used if you generate your own legend+
-=== Return Value === +
-^ Return ​Type +
-String<!-- System.String --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --> +** {{wiki:​PublicProperty.gif|}} IconImage **
-[[#Public Properties|Go Back]] +
-==== NumericFormat ==== +
-This property gets and sets the format that will be applied to the text which can be parsed to double type. +
-=== Remarks === +
-With this property, you can apply formats to the text that is retrieved from the feature. +
-=== Return Value === +
-^ Return Type ^ +
-| String<​!-- System.String --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //This property gets and sets the GeoImage you want to use for the image.// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== OverlappingRule ==== +  * //You will typically want to use this property if your image is derived from a streamOtherwiseyou can use the IconFilePathName property to specify where the icon is located and we will handle ​the rest.// 
-This property gets and sets the rule that determines how overlapping labels are handled+== Return Value == 
-=== Remarks ​=== +  ​* ​Type:[[ThinkGeo.MapSuite.Core.GeoImage|GeoImage]]
-This defines the rules for label overlappingCurrentlyeither ​we allow overlapping or we do not. In the future, we may extend this to allow some percentage of partial overlapping+
-=== Return Value === +
-^ Return ​Type +
-[[ThinkGeo.MapSuite.PortableCore.LabelOverlappingRule|LabelOverlappingRule]]<!-- ThinkGeo.MapSuite.PortableCore.LabelOverlappingRule --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +** {{wiki:​PublicProperty.gif|}} IconImageScale **
-[[#Public Properties|Go Back]] +
-==== PointPlacement ==== +
-This property gets and sets the location of the label for point features relative to the point. +
-=== Remarks === +
-This property allows you to choose where the labels are created relative to the point. For example, you can set the property to RightCenter,​ which would ensure that all labels are placed to the right of and vertically centered with the point. Different kinds of point layers can be positioned differently. If the point layer is dense and position is not a main concern, then you can try the BestPlacement property. That property overrides this property and tries to fit the label in the best location so that the minimum number of labels are suppressed due to overlapping issues. +
-=== Return Value === +
-^ Return Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.PointPlacement|PointPlacement]]<​!-- ThinkGeo.MapSuite.PortableCore.PointPlacement --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //This property gets and sets the scale of the image you want to draw.// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== PolygonLabelingLocationMode ==== +  * //This property allows you to scale the image up and down depending on how large or small you want itIt can be changed dynamically,​ so you could change it at every scale level to resize the bitmap based on the current scale. A scale of 1 would be the original sizewhile a scale of 2 would double ​the size. A scale of .5 would reduce the size of the image by half, and so on.// 
-This property gets and sets the mode that determines how to locate polygon'​s labeling +== Return Value == 
-=== Remarks ​=== +  ​* ​Type:Double
-There are two ways to handle polygon'​s labeling locationThe first is to use polygon'​s centroid as the labeling location, the second way is to use polygon'​s boungdingbox center as the labeling location+
-=== Return Value === +
-^ Return ​Type +
-| [[ThinkGeo.MapSuite.PortableCore.PolygonLabelingLocationMode|PolygonLabelingLocationMode]]<​!-- ThinkGeo.MapSuite.PortableCore.PolygonLabelingLocationMode --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +** {{wiki:​PublicProperty.gif|}} SuppressPartialLabels **
-[[#Public Properties|Go Back]] +
-==== RequiredColumnNames ==== +
-This property gets the collection of fields that are required for the style. +
-=== Remarks === +
-This property gets the collection of fields that are required for the style. These are in addition to any other columns you specify in styles that inherit from this one. For example, if you have use a ValueStyle and it requires a column name for the value comparison, then that column does not need to be in this collection. You only use the RequiredColumnNames for columns you need beyond those required by specific inherited styles. +
-=== Return Value === +
-^ Return Type ^ +
-| Collection<​String><​!-- System.Collections.ObjectModel.Collection{System.String--> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --> +  * //This property gets and sets whether a partial label in the current extent will be drawn or not.// 
-[[#Public Properties|Go Back]] +== Remarks ​== 
-==== RotationAngle ==== +  * //This property ​provides a solution to the "cut off" label issue in Map Suite Web Edition ​and Desktop Edition, which occurs when multiple tiles exist. When you set this property to true, any labels outside ​of the current extent will not be drawn.// 
-This property ​gets and sets the rotation angle of the item being positioned+== Return Value == 
-=== Return Value === +  ​* ​Type:Boolean
-^ Return ​Type +
-| Double<​!-- System.Double --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +** {{wiki:​PublicProperty.gif|}} XOffsetInPixel **
-[[#Public Properties|Go Back]] +
-==== SplineType ==== +
-Gets or sets the SplineType for labeling. +
-=== Return Value === +
-^ Return Type ^ +
-| [[ThinkGeo.MapSuite.PortableCore.SplineType|SplineType]]<​!-- ThinkGeo.MapSuite.PortableCore.SplineType --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== SuppressPartialLabels ==== +  * //N/A// 
-This property gets and sets whether a partial label in the current extent will be drawn or not. +== Return Value == 
-=== Remarks ​=== +  ​* ​Type:Single
-This property provides a solution to the "cut off" label issue in Map Suite Web Edition and Desktop Edition, which occurs when multiple tiles exist. When you set this property to true, any labels outside of the current extent will not be drawn. +
-=== Return Value === +
-^ Return ​Type +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.IconStyle --> +** {{wiki:​PublicProperty.gif|}} YOffsetInPixel **
-[[#Public Properties|Go Back]] +
-==== TextColumnName ==== +
-This property gets and sets the column name in the data that you want to get the text from. +
-=== Remarks === +
-This property is used when retrieving text from a feature. You will want to specify the name of the column that contains the text you want to draw. +
-=== Return Value === +
-^ Return Type ^ +
-| String<​!-- System.String --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== TextFormat ==== +  * //N/A// 
-This property gets and sets the format that will be applied to the text. +== Return Value == 
-=== Remarks ​=== +  ​* ​Type:Single
-With this property, you can apply formats to the text that is retrieved from the feature. +
-=== Return Value === +
-^ Return ​Type +
-| String<​!-- System.String --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +** {{wiki:​PublicProperty.gif|}} FittingLineInScreen **
-[[#Public Properties|Go Back]] +
-==== TextLineSegmentRatio ==== +
-This property gets and sets the ratio required for the label length to match the line length. +
-=== Remarks === +
-This allows you to suppress labels where the label length would greatly exceed the line length. For example, if you set the ratio to 1, then the label will be suppressed if it is longer than the line. If the ratio is lower, then the label would need to be shorter than the line. If higher, then the label is allowed to run past the length of the line. This allows you to control the look of things like road labeling. +
-=== Return Value === +
-^ Return Type ^ +
-| Double<​!-- System.Double --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== TextSolidBrush ==== +  * //N/A// 
-This property gets and sets the SolidBrush that will be used to draw the text. +== Return Value == 
-=== Remarks ​=== +  ​* ​Type:Boolean
-You can use this property to draw a solid color; however, if you need to use other brushes, you can access them through the Advanced property of this class. +
-=== Return Value === +
-^ Return ​Type +
-| [[ThinkGeo.MapSuite.PortableCore.GeoSolidBrush|GeoSolidBrush]]<​!-- ThinkGeo.MapSuite.PortableCore.GeoSolidBrush --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +** {{wiki:​PublicProperty.gif|}} FittingPolygonInScreen **
-[[#Public Properties|Go Back]] +
-==== XOffsetInPixel ==== +
-This property gets and sets the X pixel offset for drawing each feature. +
-=== Remarks === +
-This property allows you to specify an X offset. When combined with a Y offset, it is useful to allow you to achieve effects such as drop shadows, etc. There also may be times when you need to modify the location of feature data so as to better align it with raster satellite data. +
-=== Return Value === +
-^ Return Type ^ +
-| Single<​!-- System.Single --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +  * //N/A// 
-[[#Public Properties|Go Back]] +== Remarks == 
-==== YOffsetInPixel ==== +  * //N/A// 
-This property gets and sets the Y pixel offset for drawing each feature. +== Return Value == 
-=== Remarks ​=== +  ​* ​Type:Boolean
-This property allows you to specify a Y offset. When combined with an X offset, it is useful to allow you to achieve effects such as drop shadows, etc. There also may be times when you need to modify the location of feature data so as to better align it with raster satellite data. +
-=== Return Value === +
-^ Return ​Type +
-| Single<​!-- System.Single --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.TextStyle --> +** {{wiki:​PublicProperty.gif|}} CustomTextStyles **
-[[#Public Properties|Go Back]] +
-===== Protected Properties ===== +
-==== AllowSpline ==== +
-This property gets and sets whether line labels are allowed to spline around curved lines. +
-=== Remarks === +
-This property will allow the labeler to spline the label around curved lines. This is useful for curved streets that need to be labeled. This can have a considerable performance impact, so we suggest you experiment with it to ensure it can meet your needs. +
-=== Return Value === +
-^ Return Type ^ +
-| Boolean<​!-- System.Boolean --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --+  * //N/A// 
-[[#Protected Properties|Go Back]] +== Remarks == 
-==== FiltersCore ​==== +  * //N/A// 
-=== Return Value === +== Return Value == 
-Return Type ^ +  * Type:​Collection<[[ThinkGeo.MapSuite.Core.TextStyle|TextStyle]]
-Collection<​String>​<!-- System.Collections.ObjectModel.Collection{System.String} ​--  ​|+ 
 +** {{wiki:​PublicProperty.gif|}} RotationAngle ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Double 
 + 
 +** {{wiki:​PublicProperty.gif|}} TextFormat ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​String 
 + 
 +** {{wiki:​PublicProperty.gif|}} NumericFormat ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​String 
 + 
 +** {{wiki:​PublicProperty.gif|}} DateFormat ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​String 
 + 
 +** {{wiki:​PublicProperty.gif|}} TextSolidBrush ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:[[ThinkGeo.MapSuite.Core.GeoSolidBrush|GeoSolidBrush]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} Font ** 
 + 
 +  * //N/A// 
 +== Remarks ​== 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.GeoFont|GeoFont]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} HaloPen ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value =
 +  * Type:​[[ThinkGeo.MapSuite.Core.GeoPen|GeoPen]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} TextColumnName ** 
 + 
 +  * //N/A// 
 +== Remarks ​== 
 +  * //N/A// 
 +== Return ​Value == 
 +  * Type:String 
 + 
 +** {{wiki:​PublicProperty.gif|}} Mask ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.AreaStyle|AreaStyle]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} MaskMargin ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Int32 
 + 
 +** {{wiki:​PublicProperty.gif|}} Advanced ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.TextStyleAdvanced|TextStyleAdvanced]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} ForceHorizontalLabelForLine ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} SplineType ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.SplineType|SplineType]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} DrawingLevel ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.DrawingLevel|DrawingLevel]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} LabelPositions ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Dictionary<String,​[[ThinkGeo.MapSuite.Core.WorldLabelingCandidate|WorldLabelingCandidate]]> 
 + 
 +** {{wiki:​PublicProperty.gif|}} PolygonLabelingLocationMode ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.PolygonLabelingLocationMode|PolygonLabelingLocationMode]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} GridSize ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Int32 
 + 
 +** {{wiki:​PublicProperty.gif|}} DuplicateRule ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.LabelDuplicateRule|LabelDuplicateRule]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} OverlappingRule ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.LabelOverlappingRule|LabelOverlappingRule]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} AllowLineCarriage ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} ForceLineCarriage ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} FittingPolygon ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} LabelAllPolygonParts ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} LabelAllLineParts ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} FittingPolygonFactor ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Double 
 + 
 +** {{wiki:​PublicProperty.gif|}} TextLineSegmentRatio ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Double 
 + 
 +** {{wiki:​PublicProperty.gif|}} BestPlacement ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} PointPlacement ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.PointPlacement|PointPlacement]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} MaskType ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​[[ThinkGeo.MapSuite.Core.MaskType|MaskType]] 
 + 
 +** {{wiki:​PublicProperty.gif|}} Name ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​String 
 + 
 +** {{wiki:​PublicProperty.gif|}} IsActive ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​PublicProperty.gif|}} RequiredColumnNames ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:Collection<​String>​ 
 + 
 +** {{wiki:​PublicProperty.gif|}} Filters ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Collection<​String
 + 
 +==== Protected Properties ==== 
 +** {{wiki:​ProtectedProperty.gif|}} IsStyleDefault ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​ProtectedProperty.gif|}} AllowSpline ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​ProtectedProperty.gif|}} IsDefault ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Boolean 
 + 
 +** {{wiki:​ProtectedProperty.gif|}} FiltersCore ** 
 + 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A// 
 +== Return Value == 
 +  * Type:​Collection<​String> 
 + 
 +==== Public Events ==== 
 +** {{wiki:​PublicEvent.gif|}} Formatting ** 
 +  * //N/A// 
 +== Remarks == 
 +  * //N/A//
  
-<!-- ThinkGeo.MapSuite.PortableCore.Style --> +Event Arguments:[[ThinkGeo.MapSuite.Core.FormattingPositionStyleEventArgs|FormattingPositionStyleEventArgs]]
-[[#​Protected Properties|Go Back]] +
-===== Public Events ===== +
-==== Formatted ==== +
-=== Event Arguments ​=== +
-^ Event Arguments ^ +
-[[ThinkGeo.MapSuite.PortableCore.FormattedPositionStyleEventArgs|FormattedPositionStyleEventArgs]]<!-- ThinkGeo.MapSuite.PortableCore.FormattedPositionStyleEventArgs --> ​  |+
  
-<!-- ThinkGeo.MapSuite.PortableCore.PositionStyle --> +** {{wiki:​PublicEvent.gif|}} Formatted ** 
-[[#Public Events|Go Back]] +  * //N/A// 
-==== Formatting ==== +== Remarks ​== 
-=== Event Arguments === +  * //N/A//
-^ Event Arguments ^ +
-| [[ThinkGeo.MapSuite.PortableCore.FormattingPositionStyleEventArgs|FormattingPositionStyleEventArgs]]<​!-- ThinkGeo.MapSuite.PortableCore.FormattingPositionStyleEventArgs --> ​  |+
  
-<​!-- ​ThinkGeo.MapSuite.PortableCore.PositionStyle --> +Event Arguments:​[[ThinkGeo.MapSuite.Core.FormattedPositionStyleEventArgs|FormattedPositionStyleEventArgs]]
-[[#Public Events|Go Back]]+
  
-__NOTOC__ 
-[[Category:​MapSuitePortableCore]] 
-[[Category:​ThinkGeo.MapSuite.PortableCore]] 
-[[Category:​UpdateDocumentation]] 
  
thinkgeo.mapsuite.portablecore.iconstyle.1440040132.txt.gz · Last modified: 2015/09/23 01:36 (external edit)