devexpress/agent-skills/devexpress-blazor-ribbon
Claude Code and agent skill by devexpress/agent-skills
- community
Checking that the SKILL.md file is still in the repository.
Build and configure the DevExpress Blazor Ribbon (DxRibbon) — an Office-style tabbed command UI for Blazor. Use when creating ribbon tabs, groups, and items; application menu (File); contextual tabs; toggle/check items and radio groups; and embedding editors like combo boxes, spin edits, and color palettes. Also use for DxRibbon, ribbon UI, Office ribbon, command bar, and ribbon feature comparisons or migration scenarios.
Install
npx vskill@latest install devexpress/agent-skills/devexpress-blazor-ribbonSKILL.md
DevExpress Blazor Ribbon
DxRibbon is a tabbed command bar for Blazor applications. It organizes commands in tabs and groups — following an Office-style UX. The Ribbon supports standard items, toggle items, color palettes, combo boxes, spin editors, and contextual tabs that appear only when contextually relevant.
When to Use This Skill
- Add an Office-style ribbon to a Blazor page
- Create tabs (Home, Insert, Format, etc.) with groups and commands
- Add an Application tab (File menu) with nested sub-items
- Show contextual tabs only when certain content is selected (e.g., Picture Format, Table Tools)
- Create toggle and radio-group items in the ribbon
- Add color palette pickers to the ribbon
- Embed combo boxes and spin editors in ribbon groups
- Integrate the Ribbon with other components (RichEdit, Grid)
Prerequisites & Installation
NuGet Package
| Package | Purpose | |
|---|---|---|
DevExpress.Blazor | Ribbon component and all core Blazor UI controls |
Important: All DevExpress packages must use the same version. A valid DevExpress license is required.
Required Registration (all three steps must be present)
Program.cs — register DevExpress services:
v26.1 note:DevExpress.Blazorno longer includesoptions.BootstrapVersionorDevExpress.Blazor.BootstrapVersion. Do not generate either API.
Components/App.razor — register theme and client scripts inside <head>:
Without these two calls components render without styles and client interactivity is broken.
Components/_Imports.razor — add global namespace:
Before You Start — Ask the Developer
If the host agent has a structured question-asking tool available, use it to ask these questions one at a time with clear options — for example, Claude Code's AskUserQuestion tool or GitHub Copilot's askQuestions tool. If no such tool is available, ask the questions directly in the chat response before generating code.
- Render mode:
InteractiveServer,InteractiveWebAssembly,InteractiveAuto, or static SSR? - New or existing project?
- Tabs: What tabs and groups are needed?
- Application tab: Is a File/Application menu required?
- Contextual tabs: Do any tabs appear conditionally (e.g., table tools, picture format)?
- Special items: Color palette? Combo box? Spin editor? Toggle items?
Rule: Ribbon interactivity (clicks, toggles) requires an interactive render mode.
Component Overview
DxRibbon provides:
- Tabbed structure:
DxRibbonTab→DxRibbonGroup→ items (hierarchical command organization) - Application tab:
DxRibbonApplicationTab— a special "File" button with a nested item menu - Item types:
DxRibbonItem,DxRibbonToggleItem,DxRibbonToggleGroup,DxRibbonComboBoxItem<T,V>,DxRibbonSpinEditItem<T>,DxRibbonColorPaletteItem,DxRibbonColorGroup - Contextual tabs:
DxRibbonTabwithContextual="true"andVisible="@condition"— appear only when needed
Core Entry Point (Minimal)
Documentation & Navigation Guide
Getting Started
📄 references/getting-started.md
When you need to:
- Install the package and add
DxRibbonto a page - Create a complete minimal ribbon (tabs, groups, items)
- Add an Application tab (File menu)
Structure and Items
📄 references/structure-and-items.md
When you need to:
- Understand ribbon structure (Application tab → Tabs → Groups → Items)
- Use toggle items or radio-group toggle items
- Add combo boxes, spin editors, or color palettes to ribbon groups
- Add icons and tooltips to ribbon items
Contextual and Advanced
📄 references/contextual-and-advanced.md
When you need to:
- Show/hide contextual tabs based on selection
- Implement split drop-down buttons
- Programmatically select a tab
- Bind ribbon items to application state
Quick Start Example
More Examples
| File | What it demonstrates | |
|---|---|---|
| 📄 examples/contextual-tabs.razor | Contextual tab that appears when an image is selected | |
| 📄 examples/color-palette.razor | Text color, highlight, and background pickers with live preview | |
| 📄 examples/adaptive-ribbon.razor | Per-group vs. shared overflow collapse, ShowTabs, AdaptivePriority |
Key Properties & API Surface
DxRibbon
| Property / Event | Type | Description | |
|---|---|---|---|
ActiveTabIndex | int | Zero-based index of the selected tab (use @bind-ActiveTabIndex) | |
ShowTabs | bool | Hides tab captions while keeping all groups visible (default: true) | |
SizeMode | SizeMode | Component size: Small, Medium (default), Large | |
CssClass | string | CSS class(es) applied to the root element — use for sizing and positioning (e.g., width, height) | |
DropDownMenuMaxHeight | string | Limits the maximum height of ribbon drop-down menus (CSS unit string, e.g., "300px") | |
AdaptivityAutoCollapseItemsToGroups | bool | true (default): each group collapses into its own button; false: all collapse into one overflow menu | |
ItemClick | EventCallback<RibbonItemClickEventArgs> | Global click handler for all DxRibbonItem buttons — access args.Item.Text | |
ApplicationTabItemClick | EventCallback<RibbonApplicationTabItemClickEventArgs> | Fires when a user clicks any item inside the Application tab menu — use args.Item.Text to identify the clicked item | |
TabClick | EventCallback<RibbonTabClickEventArgs> | Fires when a tab is clicked | |
ApplicationTabClick | EventCallback<RibbonApplicationTabClickEventArgs> | Fires when the Application tab button is clicked | |
NodeEvent | EventCallback<RibbonNodeEventArgs> | Centralized handler for all ribbon interactions (clicks, focus, value changes). Cast args to specific types: RibbonTabClickEventArgs, RibbonApplicationTabClickEventArgs, etc. |
DxRibbonApplicationTab
Important:DxRibbonApplicationTabmust use open/close tags, not a self-closing tag. ChildDxRibbonApplicationTabItemelements placed between the tags are rendered as the drop-down menu. A self-closing<DxRibbonApplicationTab />produces an empty menu.
| Property | Type | Description | |
|---|---|---|---|
Text | string | Button label (typically "File") | |
Click | EventCallback | Fires when the application tab is clicked | |
Enabled | bool | Whether the button is interactive | |
Visible | bool | Whether the button is shown |
Child items: DxRibbonApplicationTabItem (nestable for submenus).
DxRibbonTab
| Property / Event | Type | Description | |
|---|---|---|---|
Text | string | Tab label | |
CssClass | string | CSS class applied to the tab header element | |
IconCssClass | string | CSS class for an icon shown on the tab | |
Contextual | bool | Marks the tab as contextual (hidden by default) | |
Visible | bool | Controls tab visibility — set via @bind or direct assignment | |
Enabled | bool | Disables the entire tab | |
Click | EventCallback<RibbonTabClickEventArgs> | Fires when this specific tab is clicked |
DxRibbonGroup
Container for ribbon items. Groups can collapse into labeled drop-down buttons during adaptive resize — use Text and IconCssClass to define the collapsed button appearance.
| Property | Type | Description | |
|---|---|---|---|
Text | string | Label shown when the group collapses into an overflow button | |
IconCssClass | string | Icon shown on the collapsed overflow button | |
AdaptivePriority | int | Collapse order: higher value collapses first (default: right-to-left) |
DxRibbonItem
| Property | Type | Description | |
|---|---|---|---|
Text | string | Item label | |
IconCssClass | string | CSS class for the item icon | |
Tooltip | string | Tooltip text shown on hover | |
IsPrimary | bool | Highlights the item with an accent color (visual only) | |
SplitDropDownButton | bool | Renders as split button with a drop-down arrow | |
NavigateUrl | string | Renders item as a navigation link | |
Target | string | HTML target attribute for NavigateUrl links (e.g., "_blank" to open in a new tab) | |
AdaptivePriority | int | Order items collapse within a group (higher value = collapses first) | |
Click | EventCallback | Click event (also see DxRibbon.ItemClick for global handling) | |
DropDownCssClass | string | CSS class applied to this item's drop-down menu (when the item has child items) | |
Enabled | bool | Whether interactive | |
Visible | bool | Whether visible |
DxRibbonToggleItem / DxRibbonToggleGroup
| Property | Type | Description | |
|---|---|---|---|
Text | string | Item label | |
@bind-Checked | bool | Two-way binding for toggle state |
DxRibbonToggleGroup wraps DxRibbonToggleItem components. Items in the same group act as radio buttons — only one can be checked at a time.
DxRibbonComboBoxItem (TData, TValue)
| Property | Type | Description | |
|---|---|---|---|
Data | IEnumerable<TData> | Data collection | |
@bind-Value | TValue | Selected value (two-way) | |
TextFieldName | string | Property name to display | |
AllowUserInput | bool | Enables free-text entry | |
NullText | string | Placeholder text when no value selected | |
Width | string | CSS width (e.g., "120px") |
DxRibbonSpinEditItem (T)
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingplugins/dx-blazor/skills/devexpress-blazor-ribbon/SKILL.md
Popularity
- Repository stars
- 52
- Repository forks
- 8
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/devexpress/agent-skills/devexpress-blazor-ribbon)