Show / Hide Table of Contents

Class SubtypeFeatureLayer

A layer that can visualize feature data with different visibility, rendering, popup properties, and so on for some or all of the subtypes in an ArcGISFeatureTable.

Inheritance
Object
Layer
FeatureLayer
SubtypeFeatureLayer
Implements
INotifyPropertyChanged
ILoadable
ILayerContent
IPopupSource
ITimeAware
IFloorAware
FeatureLayer.FeatureTable
FeatureLayer.Renderer
FeatureLayer.DefinitionExpression
FeatureLayer.DisplayFilterDefinition
FeatureLayer.LabelsEnabled
FeatureLayer.RefreshInterval
FeatureLayer.UnknownJson
FeatureLayer.UnsupportedJson
FeatureLayer.RenderingMode
FeatureLayer.SceneProperties
FeatureLayer.ScaleSymbols
FeatureLayer.TilingMode
FeatureLayer.FloorDefinition
FeatureLayer.IsPopupEnabled
FeatureLayer.PopupDefinition
FeatureLayer.GetSelectedFeaturesAsync()
FeatureLayer.ClearSelection()
FeatureLayer.ResetFeaturesVisible()
FeatureLayer.ResetRenderer()
FeatureLayer.SelectFeature(Feature)
FeatureLayer.SelectFeatures(IEnumerable<Feature>)
FeatureLayer.SelectFeaturesAsync(QueryParameters, SelectionMode)
FeatureLayer.SelectFeaturesAsync(QueryParameters, SelectionMode, CancellationToken)
FeatureLayer.SetFeatureVisible(Feature, Boolean)
FeatureLayer.SetFeaturesVisible(IEnumerable<Feature>, Boolean)
FeatureLayer.UnselectFeature(Feature)
FeatureLayer.UnselectFeatures(IEnumerable<Feature>)
FeatureLayer.LabelDefinitions
FeatureLayer.FullTimeExtent
FeatureLayer.IsTimeFilteringEnabled
FeatureLayer.SupportsTimeFiltering
FeatureLayer.TimeInterval
FeatureLayer.TimeOffset
FeatureLayer.FullTimeExtentChanged
Layer.LoadAsync()
Layer.CancelLoad()
Layer.RetryLoadAsync()
Layer.LoadStatus
Layer.LoadError
Layer.Item
Layer.Attribution
Layer.Description
Layer.MaxScale
Layer.MinScale
Layer.SpatialReference
Layer.Opacity
Layer.Id
Layer.FullExtent
Layer.Clone()
Layer.CanChangeVisibility
Layer.IsVisible
Layer.IsIdentifyEnabled
Layer.Name
Layer.ShowInLegend
Layer.SublayerContents
Layer.GetLegendInfosAsync()
Layer.IsVisibleAtScale(Double)
Layer.PropertyChanged
Layer.OnPropertyChanged(String)
Layer.Loaded
Layer.LoadStatusChanged
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()
Namespace: Esri.ArcGISRuntime.Mapping
Assembly: Esri.ArcGISRuntime.dll
Syntax
public sealed class SubtypeFeatureLayer : FeatureLayer, INotifyPropertyChanged, ILoadable, ILayerContent, IPopupSource, ITimeAware, IFloorAware
Remarks

The ArcGISFeatureTable must have a SubtypeField defined, and at least one FeatureSubtype defined, otherwise the layer will fail to load.

Subtypes provide a way to organize your data within an ArcGIS feature table. For example, the streets in a city streets feature table could be categorized into three subtypes - local streets, collector streets, and arterial streets. The benefit of the subtype feature layer is that it allows you to configure different layer properties per subtype. This is particularly useful for data, such as utility networks, in which many different network elements are grouped into a single subtype feature layer.

Functional characteristics

The subtype feature layer acts like a group layer that automatically creates one feature layer, or subtype sublayer, for each subtype in the table. Each subtype sublayer can be configured independently of one another. They can have different renderers, label definitions, max and min scales, visibility, layer order in the map, and so on. When a subtype group layer is read from a web map or mobile map, it is represented as a SubtypeFeatureLayer. Saving a map that contains a SubtypeFeatureLayer will save the layer as a subtype group layer. SubtypeFeatureLayers are supported in offline maps and will work in offline editing workflows.

Performance characteristics

Queries are optimized across all sublayers. For example, a pan of the map sends a single request to the feature table to cover all the sublayers. If you had manually created a feature layer for each subtype, this would have resulted in one query per feature layer.

Sample Code:

  • Display subtype feature layer

Constructors

Name Description
SubtypeFeatureLayer(ArcGISFeatureTable)

Initializes a new instance of the SubtypeFeatureLayer class.

SubtypeFeatureLayer(Item, Int64)

Initializes a new instance of the SubtypeFeatureLayer class from a feature service portal item.

Properties

Name Description
SubtypeSublayers

Gets the mutable collection of SubtypeSublayer.

Methods

Name Description
GetSublayerBySubtypeCode(Object)

Finds a SubtypeSublayer for a feature subtype based on the Code.

GetSublayerBySubtypeName(String)

Finds a SubtypeSublayer for a feature subtype based on the subtype name.

See Also

FeatureLayer

Applies to

TargetVersions
.NET Standard 2.0100.7 - 200.0
.NET 6.0100.13 - 200.0
.NET 6.0 Windows100.13 - 200.0
.NET 6.0 Android200
.NET 6.0 iOS200
.NET Framework100.7 - 200.0
.NET 5100.10 - 100.12
.NET Core 3.1100.7 - 100.12
Android100.7 - 100.15
iOS100.7 - 100.15
UWP100.7 - 200.0

Relevant samples

Display subtype feature layer: Displays a composite layer of all the subtype values in a feature class.
In This Article
Back to top Copyright © 2022 Esri.