MCPInstall

syncfusion-wpf-toolbar

Implement Syncfusion WPF ToolBarAdv controls for customizable toolbar layouts. Use this when creating toolbars with custom positioning, handling overflow items, implementing floating or docked states, or integrating ToolBarManager for multi-position layouts. Covers band positioning, gripper controls, add/remove button functionality, and dynamic state management.

Installs
155
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-toolbar
  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-toolbar 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 ToolBarAdv

When to Use This Skill

Reference this skill when users need to:

  • Implement ToolBarAdv controls in WPF applications with Syncfusion.Shared.WPF assembly
  • Create command toolbars with buttons, separators, and custom controls
  • Handle overflow items when toolbar content exceeds available space
  • Implement floating toolbars that can detach and dock at different positions
  • Use ToolBarManager to organize toolbars at top, bottom, left, or right positions
  • Configure band positioning to control toolbar layout within ToolBarTrayAdv
  • Add/remove button functionality allowing users to show/hide toolbar items
  • Customize toolbar appearance with themes, icon templates, and styling
  • Manage toolbar states (Docked, Floating, Hidden) dynamically
  • Implement gripper controls for toolbar drag-and-drop repositioning

Component Overview

ToolBarAdv is a container control for grouping related commands or controls, typically consisting of buttons that invoke actions. It provides:

  • Flexible positioning with Band and BandIndex properties
  • Overflow panel for items that don't fit in visible space
  • Multiple states: Docked, Floating, or Hidden
  • ToolBarManager integration for multi-position docking
  • Gripper control for user-driven repositioning
  • Icon templates supporting path data and font icons
  • Add/Remove buttons for user-customizable item visibility
  • Theme support via SfSkinManager

Key Controls:

  • ToolBarAdv - Main toolbar container
  • ToolBarTrayAdv - Container for organizing multiple toolbars in bands
  • ToolBarManager - Layout manager for positioning toolbars at Top/Bottom/Left/Right
  • ToolBarItemSeparator - Visual separator between toolbar items

Assembly: Syncfusion.Shared.WPF
Namespace: Syncfusion.Windows.Tools.Controls

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

  • Assembly and NuGet package installation
  • Creating ToolBarAdv via XAML and C#
  • Basic structure (Gripper, Overflow button)
  • Adding buttons and controls to toolbar
  • Icon template setup with path data
  • Initial appearance and styling
  • License key registration (v16.2.0.x+)

Positioning and Layout

📄 Read: references/positioning-and-layout.md

  • Band and BandIndex properties for toolbar placement
  • Overflow handling (OverflowMode.Always, Never, AsNeeded)
  • Gripper visibility control
  • ToolBarTrayAdv orientation (Horizontal/Vertical)
  • Multiple toolbar arrangement in bands
  • Overflow panel behavior

Add/Remove Button Functionality

📄 Read: references/add-remove-buttons.md

  • EnableAddRemoveButton feature
  • Adding items with Icon and Label properties
  • Hiding toolbar items with IsAvailable attached property
  • ToolBarItemInfoCollection management
  • User-driven item visibility customization

Toolbar States and Behavior

📄 Read: references/toolbar-states.md

  • ToolBarState property (Docked, Floating, Hidden)
  • FloatingBarLocation configuration
  • Docking restrictions (CanDockAtTop/Bottom/Left/Right)
  • ToolBarStateChanged event handling
  • Floating toolbar lifecycle
  • State transitions and management

ToolBarManager Integration

📄 Read: references/toolbar-manager.md

  • TopToolBarTray, BottomToolBarTray, LeftToolBarTray, RightToolBarTray
  • Multi-position toolbar layout
  • Content placement in remaining space
  • IsLocked property to prevent repositioning
  • Floating toolbar requirements

Customization and Theming

📄 Read: references/customization-theming.md

  • FloatingToolBarStyle property
  • Foreground color customization
  • ControlsResourceDictionary for FrameworkElement styles
  • SfSkinManager theme application
  • ThemeStudio for custom themes
  • Built-in theme options

Quick Start Example

Basic ToolBarAdv with Buttons

XAML:

<Window xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
    <syncfusion:ToolBarTrayAdv>
        <syncfusion:ToolBarAdv ToolBarName="Standard" Height="40">
            <!-- New Document Button -->
            <Button Width="22" Height="22" ToolTip="New">
                <Image Source="Images/NewDocumentHS.png" Width="16" Height="16"/>
            </Button>
            
            <!-- Open Document Button -->
            <Button Width="22" Height="22" ToolTip="Open">
                <Image Source="Images/openHS.png" Width="16" Height="16"/>
            </Button>
            
            <!-- Separator -->
            <syncfusion:ToolBarItemSeparator />
            
            <!-- Save Button -->
            <Button Width="22" Height="22" ToolTip="Save">
                <Image Source="Images/saveHS.png" Width="16" Height="16"/>
            </Button>
        </syncfusion:ToolBarAdv>
    </syncfusion:ToolBarTrayAdv>
</Window>

C#:

using Syncfusion.Windows.Tools.Controls;

// Create toolbar
ToolBarAdv toolBar = new ToolBarAdv();
toolBar.ToolBarName = "Standard";
toolBar.Height = 40;

// Add New button
Button newButton = new Button
{
    Width = 22,
    Height = 22,
    ToolTip = "New",
    Content = new Image 
    { 
        Source = new BitmapImage(new Uri("Images/NewDocumentHS.png", UriKind.Relative)),
        Width = 16,
        Height = 16
    }
};
toolBar.Items.Add(newButton);

// Add to ToolBarTray
ToolBarTrayAdv tray = new ToolBarTrayAdv();
tray.ToolBars.Add(toolBar);

// Add to window
this.Content = tray;

ToolBarManager with Multiple Positions

XAML:

<syncfusion:ToolBarManager x:Name="toolBarManager">
    <!-- Top Toolbar -->
    <syncfusion:ToolBarManager.TopToolBarTray>
        <syncfusion:ToolBarTrayAdv>
            <syncfusion:ToolBarAdv ToolBarName="File">
                <Button Width="22" Height="22" ToolTip="New">
                    <Image Source="Images/NewDocumentHS.png" Width="16" Height="16"/>
                </Button>
            </syncfusion:ToolBarAdv>
        </syncfusion:ToolBarTrayAdv>
    </syncfusion:ToolBarManager.TopToolBarTray>
    
    <!-- Left Toolbar -->
    <syncfusion:ToolBarManager.LeftToolBarTray>
        <syncfusion:ToolBarTrayAdv Orientation="Vertical">
            <syncfusion:ToolBarAdv ToolBarName="Tools">
                <Button Width="22" Height="22" ToolTip="Cut">
                    <Image Source="Images/CutHS.png" Width="16" Height="16"/>
                </Button>
            </syncfusion:ToolBarAdv>
        </syncfusion:ToolBarTrayAdv>
    </syncfusion:ToolBarManager.LeftToolBarTray>
    
    <!-- Main Content -->
    <syncfusion:ToolBarManager.Content>
        <TextBox Text="Your application content here"/>
    </syncfusion:ToolBarManager.Content>
</syncfusion:ToolBarManager>

Common Patterns

Pattern 1: Band Positioning for Multiple Toolbars

<syncfusion:ToolBarTrayAdv>
    <!-- First toolbar on Band 0 -->
    <syncfusion:ToolBarAdv Band="0" BandIndex="0" ToolBarName="Standard">
        <Button Content="New"/>
        <Button Content="Open"/>
    </syncfusion:ToolBarAdv>
    
    <!-- Second toolbar on same band -->
    <syncfusion:ToolBarAdv Band="0" BandIndex="1" ToolBarName="Extras">
        <Button Content="Cut"/>
        <Button Content="Copy"/>
    </syncfusion:ToolBarAdv>
    
    <!-- Third toolbar on different band -->
    <syncfusion:ToolBarAdv Band="1" BandIndex="0" ToolBarName="Format">
        <Button Content="Bold"/>
        <Button Content="Italic"/>
    </syncfusion:ToolBarAdv>
</syncfusion:ToolBarTrayAdv>

Pattern 2: Overflow Mode Control

<syncfusion:ToolBarAdv>
    <!-- Always visible -->
    <Button syncfusion:ToolBarAdv.OverflowMode="Never"
            Content="Important"/>
    
    <!-- Can overflow when needed -->
    <Button syncfusion:ToolBarAdv.OverflowMode="AsNeeded"
            Content="Normal"/>
    
    <!-- Always in overflow -->
    <Button syncfusion:ToolBarAdv.OverflowMode="Always"
            Content="Advanced"/>
</syncfusion:ToolBarAdv>

Pattern 3: Add/Remove Buttons with Labels

<syncfusion:ToolBarAdv EnableAddRemoveButton="True">
    <Button syncfusion:ToolBarAdv.Label="New Document"
            syncfusion:ToolBarAdv.Icon="Images/NewDocumentHS.png">
        <Image Source="Images/NewDocumentHS.png" Width="16" Height="16"/>
    </Button>
    
    <Button syncfusion:ToolBarAdv.Label="Open Document"
            syncfusion:ToolBarAdv.Icon="Images/openHS.png">
        <Image Source="Images/openHS.png" Width="16" Height="16"/>
    </Button>
</syncfusion:ToolBarAdv>

Pattern 4: Floating Toolbar Configuration

<syncfusion:ToolBarManager>
    <syncfusion:ToolBarManager.TopToolBarTray>
        <syncfusion:ToolBarTrayAdv>
            <syncfusion:ToolBarAdv 
                ToolBarName="FloatingTools"
                syncfusion:ToolBarManager.ToolBarState="Floating"
                FloatingBarLocation="500,300">
                <Button Content="Tool 1"/>
                <Button Content="Tool 2"/>
            </syncfusion:ToolBarAdv>
        </syncfusion:ToolBarTrayAdv>
    </syncfusion:ToolBarManager.TopToolBarTray>
</syncfusion:ToolBarManager>

Key Properties

ToolBarAdv Properties

PropertyDescriptionTypeWhen to Use
BandBand index where toolbar should be placedintPosition toolbar in specific row/column
BandIndexPosition within the bandintOrder multiple toolbars in same band
ToolBarNameDisplay name for toolbarstringIdentify toolbar to users
GripperVisibilityShow/hide gripper handleVisibilityControl user repositioning ability
FloatingBarLocationPosition for floating statePointSet custom floating position
IsOverflowOpenOverflow popup open stateboolProgrammatically open/close overflow
EnableAddRemoveButtonShow add/remove menuboolAllow users to customize visible items

ToolBarManager Properties

PropertyDescriptionTypeWhen to Use
TopToolBarTrayToolbar tray at topToolBarTrayAdvPosition toolbars at top
BottomToolBarTrayToolbar tray at bottomToolBarTrayAdvPosition toolbars at bottom
LeftToolBarTrayToolbar tray at leftToolBarTrayAdvPosition toolbars at left
RightToolBarTrayToolbar tray at rightToolBarTrayAdvPosition toolbars at right
CanDockAtTop/Bottom/Left/RightAllow docking at positionboolRestrict docking positions
ContentMain application contentUIElementContent displayed in remaining space

Common Use Cases

Use Case 1: Application Menu Bar

Create standard application toolbar with File, Edit, Format commands positioned at top.

When: Building document editors, IDEs, or productivity applications
Read: references/getting-started.md, references/toolbar-manager.md

Use Case 2: Contextual Toolbars

Multiple toolbars organized in bands, showing/hiding based on current context or selection.

When: Complex applications with mode-specific commands
Read: references/positioning-and-layout.md, references/add-remove-buttons.md

Use Case 3: Floating Tool Palettes

Detachable toolbars that users can position anywhere on screen.

When: Graphics editors, design tools, or applications with detachable panels
Read: references/toolbar-states.md, references/toolbar-manager.md

Use Case 4: User-Customizable Toolbars

Allow users to show/hide toolbar items based on their preferences.

When: Applications with power users who want to customize their workspace
Read: references/add-remove-buttons.md

Best Practices

  1. Use ToolBarManager when you need toolbars at multiple positions (top/bottom/left/right)
  2. Set ToolBarName for all toolbars to help users identify them
  3. Configure OverflowMode strategically - keep critical buttons visible with Never
  4. Enable Add/Remove buttons for power user scenarios with many optional commands
  5. Use Icon and Label attached properties when EnableAddRemoveButton is true
  6. Set meaningful FloatingBarLocation to ensure floating toolbars appear in useful positions
  7. Apply themes consistently using SfSkinManager for professional appearance
  8. Use IconTemplate for scalable vector icons instead of raster images
  9. Group related commands in the same toolbar with separators
  10. Test toolbar behavior at different window sizes to ensure overflow works correctly

FAQ

What does the syncfusion-wpf-toolbar skill do?

Implement Syncfusion WPF ToolBarAdv controls for customizable toolbar layouts. Use this when creating toolbars with custom positioning, handling overflow items, implementing floating or docked states, or integrating ToolBarManager for multi-position layouts. Covers band positioning, gripper controls, add/remove button functionality, and dynamic state management.

How do I install syncfusion-wpf-toolbar?

Run npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-toolbar 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-toolbar/ (personal) or .claude/skills/syncfusion-wpf-toolbar/ (project).

Which AI agents can use syncfusion-wpf-toolbar?

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-toolbar 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-toolbar?

It is published by syncfusion in syncfusion/wpf-ui-components-skills. It has 155 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-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-combobox

syncfusion/wpf-ui-components-skills

Open the skill to read its SKILL.md instructions.

Frontend & Design163 installs

syncfusion-wpf-color-palette

syncfusion/wpf-ui-components-skills

Open the skill to read its SKILL.md instructions.

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