Creates scalable vector icons in WPF using PathGeometry and GeometryGroup. Use when building resolution-independent icons, icon buttons, or symbol libraries.
View on GitHubchristian289/dotnet-with-claudecode
wpf-dev-pack
February 1, 2026
Select agents to install to:
npx add-skill https://github.com/christian289/dotnet-with-claudecode/blob/main/wpf-dev-pack/skills/creating-wpf-vector-icons/SKILL.md -a claude-code --skill creating-wpf-vector-iconsInstallation paths:
.claude/skills/creating-wpf-vector-icons/# WPF Vector Icons
Create scalable, resolution-independent icons using WPF geometry.
## 1. Icon Definition Patterns
### 1.1 PathGeometry Resources
```xml
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<!-- Check mark -->
<PathGeometry x:Key="CheckIconGeometry">
M 2,7 L 5,10 L 10,3
</PathGeometry>
<!-- Close (X) -->
<PathGeometry x:Key="CloseIconGeometry">
M 2,2 L 10,10 M 10,2 L 2,10
</PathGeometry>
<!-- Plus -->
<PathGeometry x:Key="PlusIconGeometry">
M 6,2 L 6,10 M 2,6 L 10,6
</PathGeometry>
<!-- Minus -->
<PathGeometry x:Key="MinusIconGeometry">
M 2,6 L 10,6
</PathGeometry>
<!-- Arrow right -->
<PathGeometry x:Key="ArrowRightIconGeometry">
M 2,6 L 10,6 M 7,3 L 10,6 L 7,9
</PathGeometry>
<!-- Search (magnifier) -->
<PathGeometry x:Key="SearchIconGeometry">
M 7,7 A 4,4 0 1 1 7,6.99 M 10,10 L 14,14
</PathGeometry>
</ResourceDictionary>
```
### 1.2 GeometryGroup for Complex Icons
```xml
<!-- Menu (hamburger) icon -->
<GeometryGroup x:Key="MenuIconGeometry">
<RectangleGeometry Rect="0,0,16,2"/>
<RectangleGeometry Rect="0,6,16,2"/>
<RectangleGeometry Rect="0,12,16,2"/>
</GeometryGroup>
<!-- Settings (gear) icon -->
<GeometryGroup x:Key="SettingsIconGeometry">
<EllipseGeometry Center="8,8" RadiusX="3" RadiusY="3"/>
<PathGeometry>
M 8,0 L 9,3 L 7,3 Z
M 8,16 L 9,13 L 7,13 Z
M 0,8 L 3,9 L 3,7 Z
M 16,8 L 13,9 L 13,7 Z
</PathGeometry>
</GeometryGroup>
<!-- Home icon -->
<GeometryGroup x:Key="HomeIconGeometry">
<PathGeometry>M 8,1 L 1,7 L 3,7 L 3,14 L 6,14 L 6,10 L 10,10 L 10,14 L 13,14 L 13,7 L 15,7 Z</PathGeometry>
</GeometryGroup>
```
---
## 2. Icon Usage
### 2.1 Direct Path Usage
```xml
<Path Data="{StaticResource CheckIconGeometry}"
Fill="Green"
Width=