$npx -y skills add DevExpress/agent-skills --skill devexpress-winforms-editorsDevExpress WinForms Editors suite — every editor under DevExpress.XtraEditors: the BaseEdit hierarchy (TextEdit, ButtonEdit, MemoEdit, ComboBoxEdit, ImageComboBoxEdit, CheckedComboBoxEdit, LookUpEdit, GridLookUpEdit, SearchLookUpEdit, TreeListLookUpEdit, SpinEdit, DateEdit, TimeE
| 1 | # DevExpress WinForms Data Editors |
| 2 | |
| 3 | The DevExpress Editors suite (`DevExpress.XtraEditors`) is a family of standalone WinForms input controls plus the repository-item infrastructure that lets the same editor be embedded into data-aware controls (Data Grid, TreeList, Ribbon, etc.). Almost every editor derives from `BaseEdit`, which contributes the bindable `EditValue` property; a smaller set of controls inherit from `BaseControl` directly and are used for display, action, or layout — buttons, labels, list boxes, navigators. |
| 4 | |
| 5 | This skill covers three things at once: |
| 6 | |
| 7 | 1. **The editor hierarchy** — the `BaseEdit` tree (TextEdit branch, BaseCheckEdit branch, PictureEdit, ProgressBar, RadioGroup, RatingControl, TrackBar, TokenEdit, SparklineEdit), the non-`BaseEdit` controls, and how to pick the right one. |
| 8 | 2. **Masks** — the input-mask system shared across `TextEdit` descendants: `Numeric`, `DateTime`/`DateOnly`/`TimeOnly`/`DateTimeOffset`, `Simple`, `TimeSpan`, `RegEx` (Extended Regular Expressions), `Simplified RegEx`, including the `MaskSettings.Configure<>` fluent API and the `EditMask` data-annotation attributes. |
| 9 | 3. **Editor buttons** — `EditorButton`, `ButtonPredefines`, `EditorButtonImageOptions`, `Properties.Buttons` collection, click handling, captions/icons/tooltips, in `ButtonEdit` descendants (`ButtonEdit`, `ComboBoxEdit`, `LookUpEdit`, `SpinEdit`, `BrowsePathEdit`, `PopupBaseEdit`, `ColorPickEdit`, `PopupGalleryEdit`, `PopupContainerEdit`). |
| 10 | |
| 11 | ## When to Use This Skill |
| 12 | |
| 13 | - Adding any DevExpress editor to a form for text, number, date, time, lookup, color, image, file path, etc. |
| 14 | - Choosing between editor families (`TextEdit` vs `ButtonEdit` vs `ComboBoxEdit` vs `LookUpEdit` vs `GridLookUpEdit` vs `SearchLookUpEdit`; `DateEdit` vs `TimeEdit` vs `DateTimeOffsetEdit`; `CheckEdit` vs `ToggleSwitch`; `ProgressBarControl` vs `MarqueeProgressBarControl`). |
| 15 | - Knowing what is *not* a `BaseEdit` (no `EditValue`) and when to use a simple control instead — labels, buttons, list boxes, breadcrumb, navigator. |
| 16 | - Applying input masks, including DateTime, Numeric (`c`, `n`, `p`, `f`, `d`), Simple metacharacter patterns, RegEx patterns, and culture-aware behavior. |
| 17 | - Adding, customizing, hiding, or removing buttons in `ButtonEdit` descendants — predefined glyphs (`ButtonPredefines.Ellipsis`, `Search`, `Plus`, `Minus`, `Up`, `Down`, `Clear`, `Delete`, `OK`, `Close`, `Right`, `Left`, `Combo`, `DropDown`, …), custom SVG/raster images, captions, alignment, tooltips, and click events. |
| 18 | - Hiding the text box (`TextEditStyle.HideTextEditor`) or making it read-only (`DisableTextEditor`). |
| 19 | - Embedding editors into the Grid / TreeList / Ribbon via repository items. |
| 20 | |
| 21 | ## Prerequisites & Installation |
| 22 | |
| 23 | ### NuGet Packages |
| 24 | |
| 25 | | Package | Required For | |
| 26 | |---|---| |
| 27 | | `DevExpress.Win.Navigation` | All editors (`DevExpress.XtraEditors.v*.dll` + `DevExpress.Utils.v*.dll`). | |
| 28 | | `DevExpress.Win.Grid` | `GridLookUpEdit`, `SearchLookUpEdit`. | |
| 29 | | `DevExpress.Win.TreeList` | `TreeListLookUpEdit`. | |
| 30 | | `DevExpress.Win.Dialogs` | `BrowsePathEdit` (folder picker), `XtraOpenFileDialog`, `XtraSaveFileDialog`, `XtraFolderBrowserDialog`. | |
| 31 | | `DevExpress.Win` *(umbrella, optional)* | One package for most WinForms controls including all editors. | |
| 32 | |
| 33 | ### Host Form |
| 34 | |
| 35 | Use `DevExpress.XtraEdi |