IFeatureLayer Interface (ArcObjects .NET 10.6 SDK)
ArcObjects Help for .NET developers > ArcObjects namespaces > Carto > ESRI.ArcGIS.Carto > Interfaces > IF > IFeatureLayer Interface (ArcObjects .NET 10.6 SDK)
ArcObjects Library Reference (Carto)  

IFeatureLayer Interface

Provides access to members that control common aspects of a feature layer. Note: the IFeatureLayer interface has been superseded byIFeatureLayer2. Please consider using the more recent version.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Provides access to the properties and methods of a layer based on vector geographic data, which is typically a geodatabase, shapefile, or coverage feature class.


Name Description
Read-only property AreaOfInterest The default area of interest for the layer.
Read/write property Cached Indicates if the layer needs its own display cache.
Read/write property DataSourceType Data source type.
Read/write property DisplayField Primary display field.
Method Draw Draws the layer to the specified display for the given draw phase.
Read/write property FeatureClass The layer's feature class.
Read/write property MaximumScale Maximum scale (representative fraction) at which the layer will display.
Read/write property MinimumScale Minimum scale (representative fraction) at which the layer will display.
Read/write property Name Layer name.
Read/write property ScaleSymbols Indicates if symbols are scaled for the layer.
Method Search Creates a cursor based upon the search criteria.
Read/write property Selectable Indicates if layer is selectable.
Read/write property ShowTips Indicates if the layer shows map tips.
Write-only property SpatialReference Spatial reference for the layer.
Read-only property SupportedDrawPhases Supported draw phases.
Read-only property TipText Map tip text at the specified location.
Read-only property Valid Indicates if the layer is currently valid.
Read/write property Visible Indicates if the layer is currently visible.

Inherited Interfaces

Interfaces Description
ILayer Provides access to members that work with all layers.

CoClasses that implement IFeatureLayer

CoClasses and Classes Description
CadAnnotationLayer An Esri Cad annotation layer.
CadastralFabricSubLayer Cadastral Fabric Feature Layer Object.
CadFeatureLayer Esri CAD Feature Layer class.
CoverageAnnotationLayer An Esri coverage annotation layer.
DimensionLayer A collection of properties for a dimension layer.
FDOGraphicsLayer A collection of properties for an annotation layer (feature data object graphics layer).
FeatureLayer A collection of features and their visual representation.
GdbRasterCatalogLayer Geodabase RasterCatalog source and display options.
ImageServerLayer Image server layer source and display options.
IMSSubFeatureLayer A collection of IMS features as a sublayer of an IMSMapLayer.
TemporalFeatureLayer (esriTrackingAnalyst) Defines the coclass IDL parameters and attributes of the TemporalFeatureLayer COM object.


This interface has properties that specify the feature class of the layer, the data source type, the primary display field, whether or not layer symbols scale based on the map's reference scale, and whether or not the layer is selectable.

There is also a method Search for performing a search on the layer. This method returns a cursor of features from the layer that meet a given search criteria. If there is a definition query set on the layer, Search will work on the subset of the features in the layer that meet the definition criteria. However, the Search method will not work on joined fields. If the feature layer has any joins, use the IGeoFeatureLayer::SearchDisplayFeatures method instead.

IGeoFeatureLayer provides access to all properties and methods of IFeatureLayer plus additional properties to access a layer's feature renderer and labeling properties. Fewer layer types support IGeoFeatureLayer compared to IFeatureLayer.

See Also

ILayer Interface

.NET Snippets

Set Data Source | Add Hotlink | Get Selected Feature Layer in Contents View | Create Animation from Path | Add Shapefile Using OpenFileDialog | Clear Selected Map Features | Select Map Features by Attribute Query | Get FeatureLayer from Layer Index Number | Get FeatureClass of Selected Feature Layer in Contents View | Add Hyperlink | Zoom to Selected Globe Features | Add Tracking Layer To Map

.NET Samples

Add a custom menu created in .NET to ArcGIS for Desktop (Code Files: AddShapefile) | Cut polygons without selection edit task (Code Files: EditingForm) | Editing using a custom form (Code Files: EditorForm MainForm) | Custom reshape polyline edit task (Code Files: EditingForm ReshapePolylineEditTask) | ArcGIS Network Analyst extension Engine application (Code Files: frmLoadLocations frmMain) | 3D dynamic element tracking (Code Files: TrackDynamicObject) | Displaying a TOCControl context menu (Code Files: LayerSelectable) | Points along line construction tool (Code Files: PointsAlongLineForm) | Make a custom time slider (Code Files: CustomTimeSliderButton) | ViperPin tool (Code Files: ViperPinForm) | Create a geoprocessing tool to buffer a layer and retrieve messages (Code Files: BufferDlg) | Managing snap agents (Code Files: EditingForm) | Tabbed feature inspector (Code Files: AttachTabbedInspectorExtensionCommand EngineApplication) | Utility wizard for basic schematic datasets configuration (Code Files: GenerateSchematicTemplate) | Adding a real-time feed to ArcMap (Code Files: AddTrackingServerLayerButton) | Automate ArcGIS for Desktop applications (Code Files: Form1) | Simple point plug-in data source (Code Files: OpenSimplePointDlg) | Executing geoprocessing tools in the background (Code Files: RunGPForm) | Custom upstream trace task (Code Files: CustomUpstreamTraceTaskVBNet) | Applying a time offset to a time-aware feature layer (Code Files: TimeOffsetButton) | Change layer rendering using the SymbologyControl (Code Files: LayerRendering) | Displaying MapTips in the MapControl (Code Files: MapTips) | Set the time extents for a layer then render the layer (Code Files: SetTimeExtentsButton) | Custom vertex editing commands (Code Files: EditingForm) | Add a traversal result to the map (Code Files: AddTraversalResultsToMap) | Buffer snap agent (Code Files: BufferSnap EditingForm) | Custom scene navigation commands (Code Files: SelectFeatures) | Implementing a property page for an ArcGIS Engine application (Code Files: FeatureLayerSymbology PropertySheet SymbolSelectorPropPage) | Custom selection extension (Code Files: SelectionExtension SelectionTargetComboBox) | Create camera flyby from path (Code Files: frmCameraPath) | Retrieve a color ramp from the SymbologyControl (Code Files: SymbolForm) | Edit event listener (Code Files: EditingForm) | Create a custom selection extension by extending ArcObjects (Code Files: SelectionExtension SelectionTargetComboBox) | Time Series Graph tool add-in (Code Files: TimeSeriesGraph)

.NET Related Topics

3DAnalyst | Add-in coding patterns | Adding a custom menu created in .NET to ArcGIS for Desktop | Adding a plug-in data source programmatically | Adjusting feature locations with spatial adjustment | Automating ArcGIS for Desktop applications | Creating and working with basemap layers | Creating annotation and dimension feature classes | How to access a layer's underlying data | How to add different types of layers to a map | How to animate the camera along a path (line feature) in globe | How to connect to ArcGIS Tracking Server | How to create a selection set using a scatter plot graph | How to create an edit session | How to create graph series with different color types | How to get CAD transformation properties (from, to, angle, and scale) | How to get the points of a two-point CAD transformation | How to return CAD drawing layer properties | How to return CAD transformation settings | How to set CAD transformation properties (from, to, angle, and scale) | How to set the points of a two-point CAD transformation | How to zoom to selected features in globe | Location | Managing application state | Map services | Performing map selection | Programming with server objects | Releasing COM references | Using feature templates