syncfusion-wpf-map — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited syncfusion-wpf-map (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
The Syncfusion WPF Maps control is a powerful component for visualizing geographical data in Windows Presentation Foundation applications. It provides comprehensive support for rendering shape files, displaying map imagery, adding markers and bubbles, and creating interactive data visualizations with rich customization options.
Use this skill when you need to:
SfMap is a graphical representation control that displays geographical data with the following capabilities:
📄 Read: references/getting-started.md
📄 Read: references/layers.md
📄 Read: references/map-providers.md
📄 Read: references/data-binding.md
📄 Read: references/markers.md
📄 Read: references/bubbles.md
📄 Read: references/shapes-color-customization.md
📄 Read: references/legends.md
📄 Read: references/map-labels.md
📄 Read: references/user-interaction.md
📄 Read: references/events.md
📄 Read: references/annotations.md
📄 Read: references/multilayer-support.md
Here's a minimal example to create a map with data binding and color mapping:
<Window xmlns:syncfusion="clr-namespace:Syncfusion.UI.Xaml.Maps;assembly=Syncfusion.SfMaps.WPF">
<Grid>
<Grid.DataContext>
<local:MapViewModel />
</Grid.DataContext>
<syncfusion:SfMap>
<syncfusion:SfMap.Layers>
<syncfusion:ShapeFileLayer Uri="MyApp.ShapeFiles.world1.shp"
ItemsSource="{Binding Countries}"
ShapeIDPath="Name"
ShapeIDTableField="NAME"
EnableSelection="True">
<syncfusion:ShapeFileLayer.ShapeSettings>
<syncfusion:ShapeSetting ShapeValuePath="Population"
ShapeStroke="White"
ShapeStrokeThickness="1">
<syncfusion:ShapeSetting.FillSetting>
<syncfusion:ShapeFillSetting AutoFillColors="False">
<syncfusion:ShapeFillSetting.ColorMappings>
<syncfusion:RangeColorMapping From="0" To="1000000" Color="#FEE5D9" />
<syncfusion:RangeColorMapping From="1000000" To="10000000" Color="#FCAE91" />
<syncfusion:RangeColorMapping From="10000000" To="100000000" Color="#FB6A4A" />
<syncfusion:RangeColorMapping From="100000000" To="1000000000" Color="#CB181D" />
</syncfusion:ShapeFillSetting.ColorMappings>
</syncfusion:ShapeFillSetting>
</syncfusion:ShapeSetting.FillSetting>
</syncfusion:ShapeSetting>
</syncfusion:ShapeFileLayer.ShapeSettings>
</syncfusion:ShapeFileLayer>
</syncfusion:SfMap.Layers>
</syncfusion:SfMap>
</Grid>
</Window>using System.Collections.ObjectModel;
using System.ComponentModel;
public class Country : INotifyPropertyChanged
{
private string name;
private int population;
public string Name
{
get { return name; }
set { name = value; OnPropertyChanged(nameof(Name)); }
}
public int Population
{
get { return population; }
set { population = value; OnPropertyChanged(nameof(Population)); }
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
public class MapViewModel
{
public ObservableCollection<Country> Countries { get; set; }
public MapViewModel()
{
Countries = new ObservableCollection<Country>
{
new Country { Name = "United States", Population = 331000000 },
new Country { Name = "China", Population = 1400000000 },
new Country { Name = "India", Population = 1380000000 },
new Country { Name = "Brazil", Population = 212000000 }
};
}
}<syncfusion:ShapeFileLayer Uri="MyApp.ShapeFiles.usa_state.shp"
Markers="{Binding Cities}">
<syncfusion:ShapeFileLayer.MarkerTemplate>
<DataTemplate>
<Grid>
<Ellipse Width="12" Height="12" Fill="Red" />
<TextBlock Text="{Binding Label}"
Margin="0,15,0,0"
FontSize="11"
Foreground="Black" />
</Grid>
</DataTemplate>
</syncfusion:ShapeFileLayer.MarkerTemplate>
</syncfusion:ShapeFileLayer>public class City
{
public string Label { get; set; }
public string Latitude { get; set; }
public string Longitude { get; set; }
}<syncfusion:ShapeFileLayer.ToolTipSettings>
<syncfusion:ToolTipSetting ValuePath="Population" />
</syncfusion:ShapeFileLayer.ToolTipSettings><syncfusion:SfMap EnableZoom="True"
EnablePan="True"
MinZoom="1"
MaxZoom="20"
ZoomLevel="5" /><syncfusion:ShapeFileLayer LegendVisibility="Visible"
LegendPosition="BottomLeft"
LegendHeader="Population Density"
LegendIcon="Rectangle"
LegendColumnSplit="2" />Display population data with color-coded regions and interactive tooltips showing detailed statistics.
Show sales performance across geographical regions with bubbles representing revenue and colors indicating growth rates.
Visualize voting results with categorical colors for different candidates and legends for interpretation.
Display temperature, precipitation, or other weather metrics on maps with real-time data updates.
Mark store locations with custom markers and enable zoom/pan for users to explore different areas.
Render building layouts using custom shape files with room labeling and occupancy data visualization.
Next Steps: Navigate to the specific reference files above based on your implementation needs. Start with getting-started.md for initial setup, then explore other references as needed.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.