Represents a collection of MapItems.

Namespace:  ESRI.ArcGISExplorer.Mapping

Assembly:  ESRI.ArcGISExplorer (in ESRI.ArcGISExplorer.dll) Version: 2.0.0.1500 (2.0.0.1500)

Syntax

C#
public sealed class MapItemCollection : Collection<MapItem>
Visual Basic (Declaration)
Public NotInheritable Class MapItemCollection _
	Inherits Collection(Of MapItem)

Remarks

This class is used to store one or more items of map content. Every class that has the ability to store constituent MapItems implements the IMapItemParent interface. The interface defines a ChildItems property of type MapItemCollection.

In the context of the Map class, the collection is used to drive the content of the map in the ArcGIS Explorer Application; for example if you add a MapItem, such as a Note, to the Map.ChildItems collection it will be added to the map in the application.

Folder is another class that implements IMapItemParent and is capable of storing any type of map content in the Folder.ChildItems property.

There are circumstances where the IMapItemParent.ChildItems property is read-only, and can only contain items of a specific type. For example KmlLayer.ChildItems cannot be added to, and will only ever return a collection of constituent KmlNode objects for the KmlLayer in question. The table below indicates all IMapItemParent types that have containment constraints.

PropertyConstraint
KmlLayer.ChildItems Returns a read-only collection of constituent KmlNode objects for the KML layer.
KmlNode.ChildItems Returns a read-only collection of constituent KmlNode objects for the KML feature.
PackageLayer.ChildItems Returns a read-only collection of constituent PackageChildLayer objects for the package layer.
PackageChildLayer.ChildItems Returns a read-only collection of constituent PackageChildLayer objects for the child layer.
ServiceLayer.ChildItems Returns a read-only collection of constituent ServiceChildLayer objects for the service layer.
ServiceChildLayer.ChildItems Returns a read-only collection of constituent ServiceChildLayer objects for the child layer.

Use the CanAdd method to check if a specified MapItem can be added to the MapItemCollection.

The order of the Map.ChildItems or Folder.ChildItems collection dictates the order in which items are presented in the ArcGIS Explorer contents window. By default, items are added to the end of the collection and will display at the bottom of the content hierarchy. If you wish to add items to the top of the hierarchy use the AddFirst method.

The order of the collection does not influence drawing order of map content; this is initially determined by the MapItem type:

  • An ImageOverlay MapItem represents an image positioned in relation to the map window. ImageOverlays are drawn on top of all other MapItem types. If your map contains more than one overlay, you can use the ImageOverlayDrawingOrder property to change the overlay drawing order.
  • A Note is a type of map content, that represents a Graphic associated with a Popup. Graphics are drawn underneath ImageOverlay objects, but on top of all layers in the map.
  • The Layer classes are a subset of MapItems that reference geographic data. When a Layer is added to the map, the related data is draped over the basemap or, if applicable, used as a terrain elevation source in 3D. If your map contains more than one layer, you can use the LayerDrawingOrder property to change the layer drawing order.

Inheritance Hierarchy

System..::.Object

  System.Collections.ObjectModel..::.Collection<(Of <(MapItem>)>)

    ESRI.ArcGISExplorer.Mapping..::.MapItemCollection

See Also