![](dotnetdiagramimages/image1288.png)
public sealed class StreamLayer : FeatureLayer, ArcGIS.Desktop.Core.IMetadataInfo, IDisplayTable, IMetadataSource, ITableDefinitionQueries, System.ComponentModel.INotifyPropertyChanged, System.IDisposable
Public NotInheritable Class StreamLayer Inherits FeatureLayer Implements ArcGIS.Desktop.Core.IMetadataInfo, IDisplayTable, IMetadataSource, ITableDefinitionQueries, System.ComponentModel.INotifyPropertyChanged, System.IDisposable
Stream layer is a type of FeatureLayer.To create a StreamLayer, you must call CreateLayer method of the LayerFactory class, instead of directly using a constructor.
When you use LayerFactory.CreateLayer<T>, you need to pass in a FeatureLayerCreationParams. You should set UniqueValueRendererDefinition and ClassBreaksRendererDefinition in a FeatureLayerCreationParams only when the source stream service has associated archieved feature service layer. See ArcGIS.Core.Data.Realtime.StreamServiceFeatureClassDefinition.GetArchiveFeatureServiceLayerURL for details. That is because at the creation time a stream layer starts with empty set of features.
You can call FeatureLayer.CreateRenderer anytime later once you have sufficient features to compute and assign a ArcGIS.Core.CIM.CIMUniqueValueRenderer or ArcGIS.Core.CIM.CIMClassBreaksRenderer to a stream layer.
//Must be on the QueuedTask var url = "https://geoeventsample1.esri.com:6443/arcgis/rest/services/AirportTraffics/StreamServer"; var createParam = new FeatureLayerCreationParams(new Uri(url)) { IsVisible = false //turned off by default }; var streamLayer = LayerFactory.Instance.CreateLayer<StreamLayer>(createParam, map); //or use "original" create layer (will be visible by default) Uri uri = new Uri(url); streamLayer = LayerFactory.Instance.CreateLayer(uri, map) as StreamLayer; streamLayer.SetVisibility(false);//turn off
//Must be on the QueuedTask var url = "https://geoeventsample1.esri.com:6443/arcgis/rest/services/AirportTraffics/StreamServer"; var lyrCreateParam = new FeatureLayerCreationParams(new Uri(url)) { IsVisible = true, //At 2.x - DefinitionFilter = new CIMDefinitionFilter() //{ // DefinitionExpression = "RWY = '29L'", // Name = "Runway" //} DefinitionQuery = new DefinitionQuery(whereClause: "RWY = '29L'", name: "Runway") }; var streamLayer = LayerFactory.Instance.CreateLayer<StreamLayer>(lyrCreateParam, map);
//Must be on QueuedTask! var renderer = streamLayer.GetRenderer();
System.Object
ArcGIS.Desktop.Framework.Contracts.PropertyChangedBase
ArcGIS.Desktop.Mapping.MapMember
ArcGIS.Desktop.Mapping.Layer
ArcGIS.Desktop.Mapping.BasicFeatureLayer
ArcGIS.Desktop.Mapping.FeatureLayer
ArcGIS.Desktop.Mapping.StreamLayer
Target Platforms: Windows 11, Windows 10