Picker Editors
Design-time editors for selecting themes, painters, styles, icons, and colors — UI-friendly pickers for the Properties window
Table of Contents
Overview
Picker editors provide UI-friendly selection interfaces for complex property types in the Visual Studio Properties window:
ThemePickerDialog
Displays a grid of theme previews with thumbnails (generated by ThemePreviewHelper). Users can browse, preview, and select themes visually rather than typing theme names.
- Thumbnail grid with theme names
- Search/filter by theme name
- Preview on hover
- Categories: Light, Dark, High Contrast, Custom
IconPickerDialog
Visual icon browser for selecting icons from the Beep icon catalog (IconsManagement/IconCatalog.cs).
- Categorized icon grid (Actions, Navigation, Data, Media, etc.)
- Search by icon name
- Preview at multiple sizes
- Integrates with SvgResourcePathHelper for resource resolution
ColorPaletteEditor
Color palette picker with Material Design / Fluent color sets:
- Palette presets (Material, Fluent, Tailwind, Custom)
- Shade/variant selection (50-900 scale)
- Custom color creation via color wheel
- Recent colors list
PainterSelectorEditor
Picker for selecting painter implementations (e.g., for ListBox, Grid, Chart). Shows available painters with previews.
- Filters to available painters for the control type
- Preview of each painter style
- Category organization
StyleSelectorEditor
Picker for BeepControlStyle values. Shows visual examples of each style variant.
Examples
// Properties window integration:
[Editor(typeof(ThemePickerDialog), typeof(UITypeEditor))]
public string Theme { get; set; }
[Editor(typeof(IconPickerDialog), typeof(UITypeEditor))]
public string IconPath { get; set; }
[Editor(typeof(ColorPaletteEditor), typeof(UITypeEditor))]
public Color AccentColor { get; set; }