ThinkGeo.MapSuite.Core.MultipleShapeFileFeatureLayer
Note: The page was created before Map Suite 10. Map Suite 10.0 organized many classes into new namespaces and assemblies as well as had a few minor breaks in compatibility. The majority of previously built code should work without modification assuming the new namespaces are added. For guidance on upgrading your existing code, please check out MapSuite 10 Upgrade Guide.
This layer represents multiple Shape Files of the same type.
Inheritance Hierarchy
Members Summary
Public Constructors
MultipleShapeFileFeatureLayer()
Parameters
MultipleShapeFileFeatureLayer(String)
Parameters
MultipleShapeFileFeatureLayer(String,String)
With this constructor you can specify differently-named indexes for the layer. If you have one large index, specify its path and filename here. If you have smaller single indexes, use wildcards to specify a pattern to match instead. For example, if you had 50 road Shape Files named C:\Roads\??Roads.shp (where ?? is the two-character state abbreviation), but only one large index, then you would specify a string like “C:\Roads\Roads.idx”. If you instead had 50 individual indexes whose names matched the Shape Files, then you would use “C:\Roads\??Roads.idx”.
Parameters
MultipleShapeFileFeatureLayer(IEnumerable<String>)
Parameters
shapeFiles
Type:IEnumerable<String>
Description:N/A
MultipleShapeFileFeatureLayer(IEnumerable<String>,IEnumerable<String>)
This is the constructor for this class. You can pass in a group of shapes and its corresponding indexs like string[] shapeFiles = new string[] { “C:\CA_counties.shp”, “C:\AZ_counties.shp” }; string[] indexFiles = new string[] { “C:\CA_counties.midx”, “C:\AZ_counties.midx” }; In this way, the MultipleShapeFileFeatureLayer will construct from the passing 2 shapes.
Parameters
Protected Constructors
Public Methods
GetShapePathFileNames()
Return Value
Parameters
GetIndexPathFileNames()
Return Value
Parameters
GetThreadSafetyLevel()
Return Value
Parameters
CloneDeep()
Return Value
Parameters
Open()
Return Value
Type:Void
Description:N/A
Parameters
Close()
Return Value
Type:Void
Description:N/A
Parameters
GetBoundingBox()
Return Value
Parameters
Draw(GeoCanvas,Collection<SimpleCandidate>)
Return Value
Type:Void
Description:N/A
Parameters
RequestDrawing()
Return Value
Type:Void
Description:N/A
Parameters
RequestDrawing(RectangleShape)
Return Value
Type:Void
Description:N/A
Parameters
RequestDrawing(IEnumerable<RectangleShape>)
Return Value
Type:Void
Description:N/A
Parameters
RequestDrawing(TimeSpan)
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
RequestDrawing(RectangleShape,TimeSpan)
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
RequestDrawing(IEnumerable<RectangleShape>,TimeSpan)
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
ToString()
Return Value
Type:String
Description:N/A
Parameters
Equals(Object)
Return Value
Type:Boolean
Description:N/A
Parameters
obj
Type:Object
Description:N/A
GetHashCode()
Return Value
Type:Int32
Description:N/A
Parameters
GetType()
Return Value
Type:Type
Description:N/A
Parameters

BuildIndex(String)
Return Value
Type:Void
Description:None
Parameters

BuildIndex(String,BuildIndexMode)
Return Value
Type:Void
Description:None
Parameters

BuildIndex(String,String)
This overload allows you to pass in a path and filename pattern for Shapes Files and index files. If you use a pattern for the index file name, it will generate indexes for each Shape File it finds, matching the index file names to the Shape File names. Alternatively, if you use a concrete index file name, it will generate one large index instead. If you enter an indexFilePattern like “C:\Roads\??Roads.idx”, it will build individual indexes for each Shape File and name them according to the pattern. If you enter an absolute name, like “C:\Roads\Roads.idx”, it will create one large index for all of the Shape Files.
Return Value
Type:Void
Description:None
Parameters

BuildIndex(String,String,BuildIndexMode)
This overload allows you to pass in a path and filename pattern for Shapes Files and index files. If you use a pattern for the index file name, it will generate indexes for each Shape File it finds, matching the index file names to the Shape File names. Alternatively, if you use a concrete index file name, it will generate one large index instead. If you enter an indexFilePattern like “C:\Roads\??Roads.idx”, it will build individual indexes for each Shape File and name them according to the pattern. If you enter an absolute name, like “C:\Roads\Roads.idx”, it will create one large index for all of the Shape Files.
Return Value
Type:Void
Description:None
Parameters

BuildIndex(String,String,String,String)
This index-building method is very useful when you have a large number of Shape Files that contain only certain records you want. For example, you may have an individual Shape File for the states of Texas and Florida that contains only those states' roads. They are named TXRoads.shp for Texas and FLRoads.shp for Florida. Inside of these Shape Files there is a column that determines whether the roads are normal streets or highways. You, of course, want to draw highways differently. You could use a ValueStyle, but that would be slow because you'd have to look though all of the records at runtime to determine which are the highways. A better solution is to build a custom index that only has highways in it. In this way, you generate the index once and then runtime performance is fast. In our scenario, we would create an index to include all of the road Shape Files by using the pattern “*Roads.shp”. This will make sure we get both the Texas and Florida roads. Next, we specify the RoadType column as the column parameter. Then we provide a regular expression match that picks out all of the highways, and name the resulting index “Highways.idx”. We can then build another, separate index just for the normal streets. In this way, we can quickly sort the roads from the highways – and we didn't have to cut up our Shape Files to do it.
Return Value
Type:Void
Description:None
Parameters

BuildIndex(String,String,String,String,BuildIndexMode)
This index-building method is very useful when you have a large number of Shape Files that contain only certain records you want. For example, you may have an individual Shape File for the states of Texas and Florida that contains only those states' roads. They are named TXRoads.shp for Texas and FLRoads.shp for Florida. Inside of these Shape Files there is a column that determines whether the roads are normal streets or highways. You, of course, want to draw highways differently. You could use a ValueStyle, but that would be slow because you'd have to look though all of the records at runtime to determine which are the highways. A better solution is to build a custom index that only has highways in it. In this way, you generate the index once and then runtime performance is fast. In our scenario, we would create an index to include all of the road Shape Files by using the pattern “*Roads.shp”. This will make sure we get both the Texas and Florida roads. Next, we specify the RoadType column as the column parameter. Then we provide a regular expression match that picks out all of the highways, and name the resulting index “Highways.idx”. We can then build another, separate index just for the normal streets. In this way, we can quickly sort the roads from the highways – and we didn't have to cut up our Shape Files to do it.
Return Value
Type:Void
Description:None
Parameters

BuildIndex(String[],String[])
Return Value
Type:Void
Description:N/A
Parameters

BuildIndex(String[],String[],BuildIndexMode)
Return Value
Type:Void
Description:N/A
Parameters
Protected Methods
OnDrawingFeatures(DrawingFeaturesEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnDrawingWrappingFeatures(DrawingWrappingFeaturesFeatureLayerEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
SetupTools()
Return Value
Type:Void
Description:N/A
Parameters
SetupToolsCore()
Return Value
Type:Void
Description:N/A
Parameters
OpenCore()
Return Value
Type:Void
Description:N/A
Parameters
CloseCore()
Return Value
Type:Void
Description:N/A
Parameters
GetBoundingBoxCore()
Return Value
Parameters
DrawCore(GeoCanvas,Collection<SimpleCandidate>)
Return Value
Type:Void
Description:N/A
Parameters
OnRequestingDrawing(RequestingDrawingLayerEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
GetThreadSafetyLevelCore()
Return Value
Parameters
CloneDeepCore()
Return Value
Parameters
DrawException(GeoCanvas,Exception)
Return Value
Type:Void
Description:N/A
Parameters
e
Type:Exception
Description:N/A
DrawExceptionCore(GeoCanvas,Exception)
Return Value
Type:Void
Description:N/A
Parameters
e
Type:Exception
Description:N/A
OnDrawingException(DrawingExceptionLayerEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnDrawnException(DrawnExceptionLayerEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
DrawAttributionCore(GeoCanvas,String)
Return Value
Type:Void
Description:N/A
Parameters
attribution
Type:String
Description:N/A
OnDrawingAttribution(DrawingAttributionLayerEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnDrawnAttribution(DrawnAttributionLayerEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnDrawingProgressChanged(DrawingProgressChangedEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
OnRequestedDrawing(RequestedDrawingLayerEventArgs)
Return Value
Type:Void
Description:N/A
Parameters
Finalize()
Return Value
Type:Void
Description:N/A
Parameters
MemberwiseClone()
Return Value
Type:Object
Description:N/A
Parameters
Public Properties
ShapeFiles
Return Value
Indexes
Return Value
MultipleShapeFilePattern
Return Value
IndexFilePattern
Return Value
Encoding
Return Value
HasBoundingBox
This property checks to see if a Layer has a BoundingBox or not. If it has no BoundingBox, it will throw an exception when you call the GetBoundingBox() and GetFullExtent() APIs. In MultipleShapeFeatureLayer, we override this API and mark it as true.
Return Value
WrappingExtent
Return Value
WrappingMode
Return Value
EditTools
Return Value
FeatureIdsToExclude
Return Value
QueryTools
Return Value
MaxRecordsToDraw
Return Value
DrawingMarginInPixel
Return Value
FeatureSource
Return Value
DrawingQuality
Return Value
ZoomLevelSet
Return Value
DrawingMarginPercentage
Return Value
IsOpen
Return Value
DrawingTime
Return Value
Name
Return Value
IsVisible
Return Value
Transparency
Return Value
IsNegative
Return Value
IsGrayscale
Return Value
DrawingExceptionMode
Return Value
Attribution
Return Value
RequestDrawingInterval
Return Value
Protected Properties
FetchedCount
Return Value
FetchedBytes
Return Value
StyleTime
Return Value
FetchTime
Return Value
IsOpenCore
Return Value
Public Events
DrawingFeatures