View in MAUI UWP WPF WinUI View on GitHub
import InlineCode from "@esri-dx/starship-doc-components/components/InlineCode.astro";

Convert features into graphics to show them with mil2525d symbols.

Image of dictionary renderer with feature layer

Use case

A dictionary renderer uses a style file along with a rule engine to display advanced symbology. This is useful for displaying features using precise military symbology.

How to use the sample

Pan and zoom around the map. Observe the displayed military symbology on the map.

How it works

  1. Create a
    using
    .
  2. Load the geodatabase asynchronously using
    .
  3. Instantiate a
    using
    .
    • will be the mil2525d.stylx file.
  4. Load the symbol dictionary asynchronously using
    .
  5. Wait for geodatabase to completely load.
  6. Cycle through each
    from the geodatabase using
    .
  7. Create a
    from each table within the geodatabase using
    .
  8. Load the feature layer asynchronously with
    .
  9. Wait for each layer to load.
  10. After the last layer has loaded, then create a new
    from a union of the extents of all layers.
    • Set the envelope to be the
      of the map view using
      .
  11. Add the feature layer to map using
    .
  12. Create
    and attach to the feature layer.

Relevant API

  • DictionaryRenderer
  • SymbolDictionary

Offline data

This sample downloads the following items from ArcGIS Online automatically:

  • mil2525d.stylx - A stylx file for building custom applications that incorporate the MIL-STD-2525D symbol dictionary.
  • militaryoverlay.geodatabase.zip - This is a mobile geodatabase created from the Military Overlay template for use in ArcGIS Maps SDK for Native Apps samples

Tags

military, symbol

Sample Code

FeatureLayerDictionaryRenderer.xaml FeatureLayerDictionaryRenderer.xaml FeatureLayerDictionaryRenderer.xaml.cs
<UserControl x:Class="ArcGIS.WinUI.Samples.FeatureLayerDictionaryRenderer.FeatureLayerDictionaryRenderer"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:esriUI="using:Esri.ArcGISRuntime.UI.Controls">
<Grid>
<esriUI:MapView x:Name="MyMapView" />
</Grid>
</UserControl>