MCPInstall

syncfusion-wpf-ribbon

Implement Syncfusion WPF Ribbon component for modern desktop applications. Use this skill when creating ribbon interfaces in WPF with tabs, groups, buttons, menus, and galleries. Covers advanced features like application menus, backstage views, state persistence, multi-document ribbon merge, keyboard accessibility, touch support, and ribbon customization.

Installs
157
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-ribbon
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads syncfusion-wpf-ribbon automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Implementing Syncfusion WPF Ribbon

When to Use This Skill

Use this skill when you need to:

  • Create a ribbon interface in a WPF desktop application
  • Add ribbon tabs, groups, and controls (buttons, menus, galleries, inputs)
  • Configure application menus or backstage views
  • Customize ribbon appearance, styling, or layout
  • Implement state persistence or multi-document scenarios
  • Add accessibility features or touch support
  • Handle ribbon item interactions and data binding

Component Overview

The Syncfusion WPF Ribbon is a comprehensive navigation component that provides a modern, Microsoft Office-style ribbon interface for desktop applications. It organizes commands into tabs and groups, reducing UI clutter while making features discoverable.

Key capabilities:

  • Tab-based command organization with groups and columns
  • Built-in ribbon controls: buttons, menus, galleries, text inputs, checkboxes, radio buttons
  • Application menu and backstage view support
  • State persistence across application sessions
  • Multi-document ribbon merge for complex scenarios
  • Full keyboard and touch accessibility
  • Customizable styling and responsive layout

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Installation and NuGet package setup
  • Basic ribbon creation in XAML
  • Namespace declarations and project setup
  • Adding your first tab and group
  • Hooking up basic click events

Ribbon Structure & Layout

📄 Read: references/ribbon-structure.md

  • Creating tabs and managing tab collections
  • Organizing controls into groups and columns
  • Application menu configuration
  • Backstage view setup
  • RibbonItemHost for custom hosting

Ribbon Buttons & Menus

📄 Read: references/ribbon-buttons.md

  • Standard RibbonButton implementation
  • SplitButton for split commands
  • MenuButton for quick menus
  • MenuItem hierarchy and nested menus
  • Command binding and click handlers

Ribbon Input Controls

📄 Read: references/ribbon-inputs.md

  • RibbonCheckBox and RibbonRadioButton
  • RibbonTextBox for text input
  • RibbonComboBox and RibbonListBox
  • RibbonSeparator for visual grouping
  • Data binding to ribbon inputs

Ribbon Gallery Control

📄 Read: references/ribbon-gallery.md

  • Gallery setup and item templates
  • Visual item rendering
  • Selection and item selection events
  • Filtering and searching galleries
  • Gallery groups for categorized items

Customization & Styling

📄 Read: references/ribbon-customization.md

  • StatusBar configuration below the ribbon
  • Styling and template customization
  • Theming and color schemes
  • Size groups and layout compression
  • Responsive ribbon behavior

Advanced Features

📄 Read: references/ribbon-advanced.md

  • Ribbon merge for multi-document interfaces
  • State persistence (saving/loading ribbon state)
  • Dynamic tab and group creation
  • Ribbon reduce layout (auto-collapsing)
  • Programmatic ribbon manipulation

Accessibility & Touch

📄 Read: references/ribbon-accessibility.md

  • Keyboard navigation and shortcuts
  • Tooltip support for discoverability
  • Touch input handling
  • Screen reader compatibility
  • Accessibility best practices

Patterns & Best Practices

📄 Read: references/ribbon-patterns.md

  • Common ribbon UI patterns
  • When to use application menu vs tabs
  • Ribbon organization principles
  • Performance considerations
  • Design best practices

Troubleshooting

📄 Read: references/troubleshooting.md

  • Button and menu issues
  • Input control issues
  • General setup problems

Quick Start Example

Here's a minimal WPF ribbon setup to get started:

<!-- MainWindow.xaml -->
<syncfusion:RibbonWindow x:Class="RibbonApp.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
        Title="Ribbon Application" Height="600" Width="800">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        
        <!-- Ribbon Control -->
        <syncfusion:Ribbon Grid.Row="0">
            <!-- Home Tab -->
            <syncfusion:RibbonTab Caption="Home">
                <!-- File Operations Bar -->
                <syncfusion:RibbonBar Header="File Operations">
                    <syncfusion:RibbonButton Label="New" 
                                             SmallIcon="Images/new.png"
                                             Click="OnNewClick" />
                    <syncfusion:RibbonButton Label="Open" 
                                             SmallIcon="Images/open.png"
                                             Click="OnOpenClick" />
                    <syncfusion:RibbonButton Label="Save" 
                                             SmallIcon="Images/save.png"
                                             Click="OnSaveClick" />
                </syncfusion:RibbonBar>
                
                <!-- Formatting Bar -->
                <syncfusion:RibbonBar Header="Formatting">
                    <syncfusion:RibbonComboBox Label="Font">
                        <syncfusion:RibbonComboBoxItem Content="Arial" />
                        <syncfusion:RibbonComboBoxItem Content="Times New Roman" />
                        <syncfusion:RibbonComboBoxItem Content="Courier New" />
                    </syncfusion:RibbonComboBox>
                </syncfusion:RibbonBar>
            </syncfusion:RibbonTab>
            
            <!-- Edit Tab -->
            <syncfusion:RibbonTab Caption="Edit">
                <syncfusion:RibbonBar Header="Clipboard">
                    <syncfusion:RibbonButton Label="Cut" Click="OnCutClick" />
                    <syncfusion:RibbonButton Label="Copy" Click="OnCopyClick" />
                    <syncfusion:RibbonButton Label="Paste" Click="OnPasteClick" />
                </syncfusion:RibbonBar>
            </syncfusion:RibbonTab>
        </syncfusion:Ribbon>
        
        <!-- Main Content Area -->
        <TextBox Grid.Row="1" AcceptsReturn="True" />
        <StatusBar Grid.Row="2" Height="30" />
    </Grid>
</syncfusion:RibbonWindow>
// MainWindow.xaml.cs
using Syncfusion.Windows.Tools.Controls;

public partial class MainWindow : RibbonWindow
{
    public MainWindow()
    {
        InitializeComponent();
    }

    private void OnNewClick(object sender, EventArgs e)
    {
        // Handle new document
    }

    private void OnOpenClick(object sender, EventArgs e)
    {
        // Handle open file
    }

    private void OnSaveClick(object sender, EventArgs e)
    {
        // Handle save file
    }
}

Common Patterns

Pattern 1: Ribbon with Application Menu

Create a File menu accessible via the top-left menu button:

<syncfusion:Ribbon>
    <syncfusion:Ribbon.ApplicationMenu>
        <syncfusion:ApplicationMenu>
            <syncfusion:MenuItem Header="New" />
            <syncfusion:MenuItem Header="Open" />
            <syncfusion:MenuItem Header="Save" />
            <syncfusion:MenuItemSeparator />
            <syncfusion:MenuItem Header="Exit" />
        </syncfusion:ApplicationMenu>
    </syncfusion:Ribbon.ApplicationMenu>
    
    <syncfusion:RibbonTab Caption="Home">
        <!-- Tab content -->
    </syncfusion:RibbonTab>
</syncfusion:Ribbon>

Pattern 2: Tab with Multiple Bars

Organize commands into logical groups within a tab:

<syncfusion:RibbonTab Caption="Tools">
    <syncfusion:RibbonBar Header="Analysis">
        <syncfusion:RibbonButton Label="Chart" />
        <syncfusion:RibbonButton Label="Graph" />
    </syncfusion:RibbonBar>
    
    <syncfusion:RibbonBar Header="Data">
        <syncfusion:RibbonButton Label="Sort" />
        <syncfusion:RibbonButton Label="Filter" />
    </syncfusion:RibbonBar>
</syncfusion:RibbonTab>

Pattern 3: Split Button with Dropdown

Create a button with a dropdown menu for related commands:

<syncfusion:SplitButton Label="Format">
    <syncfusion:RibbonMenuItem Header="Bold" />
    <syncfusion:RibbonMenuItem Header="Italic" />
    <syncfusion:RibbonMenuItem Header="Underline" />
</syncfusion:SplitButton>

Pattern 4: Command Binding with MVVM

Bind ribbon buttons to view model commands:

<syncfusion:RibbonButton Label="Save" 
                         Command="{Binding SaveCommand}"
                         CommandParameter="All" />

Key Props Reference

Ribbon

  • ApplicationMenu - Top-left menu content
  • BackStage - Backstage panel for file operations
  • QuickAccessToolBar - Quick Access Toolbar configuration
  • AutoPersist - Enable automatic state persistence
  • SaveRibbonState() / LoadRibbonState() - Save and load ribbon state

RibbonTab

  • Caption - Tab label (use Caption instead of Header)
  • IsVisible - Show/hide tab dynamically

RibbonBar

  • Header - Bar label (replaces RibbonGroup)
  • DialogLauncherCommand - Dialog launcher for advanced options

RibbonButton / SplitButton

  • Label - Button text
  • SmallIcon / MediumIcon / LargeIcon - Button images (use instead of Icon)
  • Click / Command - Event or command binding
  • SizeForm - Size variation (Large, Medium, Small, ExtraSmall)
  • IsCheckable - Toggle button behavior

RibbonComboBox / RibbonListBox

  • Label - Control label
  • SelectedItem - Currently selected value
  • ItemsSource - Data binding source
  • SelectionChanged - Selection event

RibbonTextBox

  • Text - Text value (not Label)
  • Width - Control width

RibbonCheckBox / RibbonRadioButton

  • Content - Control label (not Label)
  • IsChecked - Checked state
  • GroupName - Radio button grouping

RibbonGallery

  • ItemsSource - Gallery items
  • ItemTemplate - Visual template for items
  • ItemSelectionChangedCommand - Selection command

Common Use Cases

Use Case 1: Text Editor Application Create a ribbon with standard formatting commands (Font, Size, Bold, Italic, Underline, Alignment). See getting-started.md for setup.

Use Case 2: Data Analysis Tool Organize analysis, charting, and export features into separate tabs with galleries for chart types. See ribbon-gallery.md.

Use Case 3: Multi-Document Editor Use ribbon merge to share common commands while allowing document-specific commands. See ribbon-advanced.md.

Use Case 4: Office-Style Application Implement application menu for file operations, backstage view for settings, and contextual tabs. See ribbon-structure.md.


Next Steps:

  • Start with references/getting-started.md for basic setup
  • Refer to specific references based on your ribbon requirements
  • Check ribbon-patterns.md for common scenarios

FAQ

What does the syncfusion-wpf-ribbon skill do?

Implement Syncfusion WPF Ribbon component for modern desktop applications. Use this skill when creating ribbon interfaces in WPF with tabs, groups, buttons, menus, and galleries. Covers advanced features like application menus, backstage views, state persistence, multi-document ribbon merge, keyboard accessibility, touch support, and ribbon customization.

How do I install syncfusion-wpf-ribbon?

Run npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-ribbon in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/syncfusion-wpf-ribbon/ (personal) or .claude/skills/syncfusion-wpf-ribbon/ (project).

Which AI agents can use syncfusion-wpf-ribbon?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is syncfusion-wpf-ribbon safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains syncfusion-wpf-ribbon?

It is published by syncfusion in syncfusion/wpf-ui-components-skills. It has 157 recorded installs.

More from syncfusion/wpf-ui-components-skills

View all →

syncfusion-wpf-theming

syncfusion/wpf-ui-components-skills

Implement and customize themes for Syncfusion WPF controls using SfSkinManager. Apply built-in themes (Windows 11, Fluent, Material, Office 2019), create custom themes with Theme Studio, and control visual effects like reveal animations and acrylic backgrounds. Use this skill whenever user needs to theme WPF applications, apply Syncfusion themes, customize colors/fonts, or configure theme-based visual effects and accessibility features.

Frontend & Design184 installs

syncfusion-wpf-datagrid

syncfusion/wpf-ui-components-skills

Implements Syncfusion WPF DataGrid (SfDataGrid) component for displaying and manipulating tabular data in Windows Presentation Foundation applications. Use this when working with data grids, table views, or data binding scenarios. Supports sorting, filtering, grouping, editing, Excel/PDF export, drag and drop, master-detail views, summaries, and extensive styling options.

Frontend & Design176 installs

syncfusion-wpf-carousel

syncfusion/wpf-ui-components-skills

Implements the Syncfusion WPF Carousel for displaying items in rotating or custom path interfaces with navigation support. Use when building image carousels, rotating galleries, or custom-path item displays with templates and data binding.

Frontend & Design164 installs

syncfusion-wpf-combobox

syncfusion/wpf-ui-components-skills

Implement Syncfusion WPF ComboBoxAdv with multiselection, editable support, autocomplete, data binding, and token features. Use this when working with dropdown selection, multiselect dropdowns, editable dropdowns, or autocomplete in WPF. Covers tokens, watermarks, delimiters, custom item templates, and dropdown behavior configuration.

Frontend & Design163 installs

syncfusion-wpf-button

syncfusion/wpf-ui-components-skills

Implement Syncfusion WPF ButtonAdv controls for configurable button UIs. Use this when adding, configuring, or customizing a Syncfusion WPF ButtonAdv — including labels, icons, size modes, toggle/checkable behavior, MVVM command binding, multiline text, corner radius, IsDefault/IsCancel modes, icon templates, and themes.

Frontend & Design163 installs

syncfusion-wpf-getting-started

syncfusion/wpf-ui-components-skills

Comprehensive guide for setting up and getting started with Syncfusion WPF components in Windows Presentation Foundation applications. Covers installation methods (web installer, NuGet, offline installer), system requirements verification, adding controls to projects, configuring themes and localization, and troubleshooting setup issues. Use this skill when users need help with installing Syncfusion WPF, configuring NuGet packages, upgrading versions, or resolving setup and configuration problems.

Frontend & Design162 installs

Popular frontend & design skills

View category →

setup-matt-pocock-skills

mattpocock/skills

Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.

Frontend & Design1.1M installs

frontend-design

anthropics/skills

Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.

OfficialFrontend & Design1M installs

hyperframes-animation

heygen-com/hyperframes

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.

prototype

mattpocock/skills

Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.

Frontend & Design999.2K installs

hyperframes-core

heygen-com/hyperframes

The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.

Frontend & Design930.5K installs

vercel-react-best-practices

vercel-labs/agent-skills

React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.

OfficialFrontend & Design843.1K installs