Syncfusion ASP.NET MVC Ribbon Control
A comprehensive skill for implementing the Syncfusion EJ2 Ribbon control in ASP.NET MVC (Razor/HTML Helper) applications. Covers the full feature set: structure, items, layouts, menus, keytips, events, and programmatic control.
Quick Start Example
@using Syncfusion.EJ2.Ribbon
@using Syncfusion.EJ2.Navigations
@Html.EJS().Ribbon("ribbon").Tabs(tab =>
{
tab.Header("Home").Groups(group =>
{
group.Header("Clipboard").Collections(collection =>
{
collection.Items(items =>
{
items.Type(RibbonItemType.Button).ButtonSettings(button =>
{
button.IconCss("e-icons e-paste").Content("Paste");
}).Add();
}).Add();
collection.Items(items =>
{
items.Type(RibbonItemType.Button).ButtonSettings(button =>
{
button.IconCss("e-icons e-cut").Content("Cut");
}).Add();
items.Type(RibbonItemType.Button).ButtonSettings(button =>
{
button.IconCss("e-icons e-copy").Content("Copy");
}).Add();
}).Add();
}).Add();
}).Add();
}).Render()
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
- NuGet package installation and setup
- Namespace and script/style references
- ScriptManager registration
- Root ribbon configuration:
SelectedTab, Width, CssClass, Locale, EnableRtl, EnablePersistence, TabAnimation
- First ribbon render with tabs, groups, collections, items
- Full working example
Tabs, Groups, Collections & Items Structure
📄 Read: references/tabs-groups-items.md
- Adding and configuring tabs (
Header, Id, KeyTip)
- Adding groups (
Header, Orientation, GroupIconCss, ShowLauncherIcon, IsCollapsible, Priority)
- Adding collections and items (
Collections, Items, Type)
- Launcher icon — enabling and customizing
- Group collapse/expand priority on resize
Built-in Ribbon Items
📄 Read: references/built-in-items.md
- Button — toggle, icon, content,
IsToggle
- CheckBox — checked state, label,
LabelPosition
- DropDown —
Target, CreatePopupOnClick, BeforeItemRender
- SplitButton —
Target, popup items
- ComboBox —
AllowFiltering, Index, SortOrder
- ColorPicker —
Value
- GroupButton —
Items, Selection (Single/Multiple), simplified mode behavior
- Gallery — groups, items,
ItemCount, SelectedItemIndex, PopupWidth, PopupHeight, templates
- Template — custom HTML items (
ItemTemplate)
DisplayOptions — Classic / Simplified / Overflow / Auto
Disabled, AllowedSizes, ActiveSize
Layouts & Resizing
📄 Read: references/layouts-resizing.md
- Classic layout — item sizes (Large/Medium/Small), orientation (Row/Column)
- Simplified layout — single-row mode, group overflow popup
- Minimized state (
IsMinimized)
- Show/hide layout switcher (
HideLayoutSwitcher)
- Resize behavior and
AllowedSizes / ActiveSize
Backstage View
📄 Read: references/backstage.md
- Enabling backstage (
BackStageMenu property)
- Adding backstage items (
Items, Content, IconCss, Id)
- Footer items (
IsFooter)
- Separators (
Separator)
- Back button (
BackButton, Text, IconCss, Visible)
- Backstage target (
Target)
- Custom template (
Template)
- Setting width, height, and header height
- Auto-close behavior on item click (
AutoClose)
- Auto-close and header height customization
File Menu
📄 Read: references/file-menu.md
- Enabling file menu (
FileMenu, Visible)
- Adding menu items (
MenuItems)
- Open submenu on click (
ShowItemOnClick)
- Custom header text (
Text)
Contextual Tabs
📄 Read: references/contextual-tabs.md
- Adding contextual tabs (
ContextualTabs)
- Controlling visibility (
Visible)
- Selected state (
IsSelected)
ShowTab and HideTab methods
Keytips & Tooltips
📄 Read: references/keytips-tooltips.md
- Enabling keytips (
EnableKeyTips)
- Keytips on items, groups, tabs, file menu, backstage, layout switcher, launcher icon
showKeyTips / hideKeyTips methods
- Keytip guidelines and gotchas
- Tooltip title, content, icon, and
ShowDelay (RibbonTooltipSettings)
- Tooltip CSS customization (
CssClass)
Events & Methods
📄 Read: references/events-methods.md
- Ribbon-level events:
Created, TabSelected, TabSelecting, RibbonCollapsing, RibbonExpanding, RibbonLayoutSwitched, LauncherIconClick, OverflowPopupOpen, OverflowPopupClose (with arg documentation)
- Item events: Button, CheckBox, ColorPicker, ComboBox, DropDown, SplitButton, GroupButton, Gallery, FileMenu, Backstage
- Dynamic methods:
addTab, addGroup, addCollection, addItem
- Removal methods:
removeTab, removeGroup, removeCollection, removeItem
- Item state methods:
enableItem, disableItem, showItem, hideItem, getItem, updateItem
- Group state methods:
enableGroup, disableGroup, showGroup, hideGroup, updateGroup
- Tab state methods:
selectTab, showTab, hideTab, enableTab, disableTab, updateTab
- Collection methods:
updateCollection
- Layout methods:
selectTab, refreshLayout
Common Patterns
Pattern: Clipboard Group (Classic)
group.Header("Clipboard").GroupIconCss("e-icons e-paste").ShowLauncherIcon(true).Collections(collection =>
{
collection.Items(items =>
{
items.Type(RibbonItemType.SplitButton).AllowedSizes(RibbonItemSize.Large)
.SplitButtonSettings(sb => { sb.IconCss("e-icons e-paste").Content("Paste").Items(pasteOptions); }).Add();
}).Add();
collection.Items(items =>
{
items.Type(RibbonItemType.Button).ButtonSettings(b => { b.IconCss("e-icons e-cut").Content("Cut"); }).Add();
items.Type(RibbonItemType.Button).ButtonSettings(b => { b.IconCss("e-icons e-copy").Content("Copy"); }).Add();
}).Add();
}).Add();
Pattern: Font Group (Row Orientation)
group.Header("Font").Orientation(ItemOrientation.Row).GroupIconCss("e-icons e-bold").Collections(collection =>
{
collection.Items(items =>
{
items.Type(RibbonItemType.ComboBox).ComboBoxSettings(cb => { cb.DataSource(fontStyle).Index(3).AllowFiltering(true).Width("150px"); }).Add();
items.Type(RibbonItemType.ComboBox).ComboBoxSettings(cb => { cb.DataSource(fontSize).Index(3).Width("65px"); }).Add();
}).Add();
}).Add();
Pattern: Help Pane Template
@Html.EJS().Ribbon("ribbon").HelpPaneTemplate("#helpPaneTemplate").Tabs(...).Render()
<script type="text/x-jsrender" id="helpPaneTemplate">
<button class="action_btn"><span class="e-icons e-undo"></span> Undo</button>
<button class="action_btn"><span class="e-icons e-redo"></span> Redo</button>
</script>
Key Properties Reference
| Property |
Type |
Description |
ActiveLayout |
RibbonLayout |
Classic (default) or Simplified |
IsMinimized |
bool |
Collapse ribbon to tab headers only |
HideLayoutSwitcher |
bool |
Show/hide the layout toggle button |
EnableKeyTips |
bool |
Enable Alt+Win/Command keytip navigation |
HelpPaneTemplate |
string |
Selector for right-side help pane content |
LauncherIconCss |
string |
Global launcher icon CSS class |
FileMenu |
FileMenuSettings |
File menu configuration |
BackStageMenu |
BackStageMenu |
Backstage view configuration |
ContextualTabs |
List<RibbonContextualTab> |
On-demand contextual tab list |
1---2name: syncfusion-aspnetmvc-ribbon3description: Implement the Syncfusion ASP.NET MVC Ribbon control with tabs, groups, and built-in items (Button, CheckBox, DropDown, SplitButton, ComboBox, ColorPicker, GroupButton, Gallery). Covers layouts (Classic/Simplified), backstage view, file menu, contextual tabs, keytips, tooltips, events, and dynamic methods. Use when building ribbon toolbars for ASP.NET MVC applications.4---56# Syncfusion ASP.NET MVC Ribbon Control78A comprehensive skill for implementing the Syncfusion EJ2 Ribbon control in ASP.NET MVC (Razor/HTML Helper) applications. Covers the full feature set: structure, items, layouts, menus, keytips, events, and programmatic control.910## Quick Start Example1112```cshtml13@using Syncfusion.EJ2.Ribbon14@using Syncfusion.EJ2.Navigations1516@Html.EJS().Ribbon("ribbon").Tabs(tab =>17{18 tab.Header("Home").Groups(group =>19 {20 group.Header("Clipboard").Collections(collection =>21 {22 collection.Items(items =>23 {24 items.Type(RibbonItemType.Button).ButtonSettings(button =>25 {26 button.IconCss("e-icons e-paste").Content("Paste");27 }).Add();28 }).Add();29 collection.Items(items =>30 {31 items.Type(RibbonItemType.Button).ButtonSettings(button =>32 {33 button.IconCss("e-icons e-cut").Content("Cut");34 }).Add();35 items.Type(RibbonItemType.Button).ButtonSettings(button =>36 {37 button.IconCss("e-icons e-copy").Content("Copy");38 }).Add();39 }).Add();40 }).Add();41 }).Add();42}).Render()43```4445---4647## Documentation and Navigation Guide4849### Getting Started50📄 **Read:** [references/getting-started.md](references/getting-started.md)51- NuGet package installation and setup52- Namespace and script/style references53- ScriptManager registration54- Root ribbon configuration: `SelectedTab`, `Width`, `CssClass`, `Locale`, `EnableRtl`, `EnablePersistence`, `TabAnimation`55- First ribbon render with tabs, groups, collections, items56- Full working example5758### Tabs, Groups, Collections & Items Structure59📄 **Read:** [references/tabs-groups-items.md](references/tabs-groups-items.md)60- Adding and configuring tabs (`Header`, `Id`, `KeyTip`)61- Adding groups (`Header`, `Orientation`, `GroupIconCss`, `ShowLauncherIcon`, `IsCollapsible`, `Priority`)62- Adding collections and items (`Collections`, `Items`, `Type`)63- Launcher icon — enabling and customizing64- Group collapse/expand priority on resize6566### Built-in Ribbon Items67📄 **Read:** [references/built-in-items.md](references/built-in-items.md)68- **Button** — toggle, icon, content, `IsToggle`69- **CheckBox** — checked state, label, `LabelPosition`70- **DropDown** — `Target`, `CreatePopupOnClick`, `BeforeItemRender`71- **SplitButton** — `Target`, popup items72- **ComboBox** — `AllowFiltering`, `Index`, `SortOrder`73- **ColorPicker** — `Value`74- **GroupButton** — `Items`, `Selection` (Single/Multiple), simplified mode behavior75- **Gallery** — groups, items, `ItemCount`, `SelectedItemIndex`, `PopupWidth`, `PopupHeight`, templates76- **Template** — custom HTML items (`ItemTemplate`)77- `DisplayOptions` — Classic / Simplified / Overflow / Auto78- `Disabled`, `AllowedSizes`, `ActiveSize`7980### Layouts & Resizing81📄 **Read:** [references/layouts-resizing.md](references/layouts-resizing.md)82- Classic layout — item sizes (Large/Medium/Small), orientation (Row/Column)83- Simplified layout — single-row mode, group overflow popup84- Minimized state (`IsMinimized`)85- Show/hide layout switcher (`HideLayoutSwitcher`)86- Resize behavior and `AllowedSizes` / `ActiveSize`8788### Backstage View89📄 **Read:** [references/backstage.md](references/backstage.md)90- Enabling backstage (`BackStageMenu` property)91- Adding backstage items (`Items`, `Content`, `IconCss`, `Id`)92- Footer items (`IsFooter`)93- Separators (`Separator`)94- Back button (`BackButton`, `Text`, `IconCss`, `Visible`)95- Backstage target (`Target`)96- Custom template (`Template`)97- Setting width, height, and header height98- Auto-close behavior on item click (`AutoClose`)99- Auto-close and header height customization100101### File Menu102📄 **Read:** [references/file-menu.md](references/file-menu.md)103- Enabling file menu (`FileMenu`, `Visible`)104- Adding menu items (`MenuItems`)105- Open submenu on click (`ShowItemOnClick`)106- Custom header text (`Text`)107108### Contextual Tabs109📄 **Read:** [references/contextual-tabs.md](references/contextual-tabs.md)110- Adding contextual tabs (`ContextualTabs`)111- Controlling visibility (`Visible`)112- Selected state (`IsSelected`)113- `ShowTab` and `HideTab` methods114115### Keytips & Tooltips116📄 **Read:** [references/keytips-tooltips.md](references/keytips-tooltips.md)117- Enabling keytips (`EnableKeyTips`)118- Keytips on items, groups, tabs, file menu, backstage, layout switcher, launcher icon119- `showKeyTips` / `hideKeyTips` methods120- Keytip guidelines and gotchas121- Tooltip title, content, icon, and `ShowDelay` (`RibbonTooltipSettings`)122- Tooltip CSS customization (`CssClass`)123124### Events & Methods125📄 **Read:** [references/events-methods.md](references/events-methods.md)126- Ribbon-level events: `Created`, `TabSelected`, `TabSelecting`, `RibbonCollapsing`, `RibbonExpanding`, `RibbonLayoutSwitched`, `LauncherIconClick`, `OverflowPopupOpen`, `OverflowPopupClose` (with arg documentation)127- Item events: Button, CheckBox, ColorPicker, ComboBox, DropDown, SplitButton, GroupButton, Gallery, FileMenu, Backstage128- Dynamic methods: `addTab`, `addGroup`, `addCollection`, `addItem`129- Removal methods: `removeTab`, `removeGroup`, `removeCollection`, `removeItem`130- Item state methods: `enableItem`, `disableItem`, `showItem`, `hideItem`, `getItem`, `updateItem`131- Group state methods: `enableGroup`, `disableGroup`, `showGroup`, `hideGroup`, `updateGroup`132- Tab state methods: `selectTab`, `showTab`, `hideTab`, `enableTab`, `disableTab`, `updateTab`133- Collection methods: `updateCollection`134- Layout methods: `selectTab`, `refreshLayout`135136---137138## Common Patterns139140### Pattern: Clipboard Group (Classic)141```cshtml142group.Header("Clipboard").GroupIconCss("e-icons e-paste").ShowLauncherIcon(true).Collections(collection =>143{144 collection.Items(items =>145 {146 items.Type(RibbonItemType.SplitButton).AllowedSizes(RibbonItemSize.Large)147 .SplitButtonSettings(sb => { sb.IconCss("e-icons e-paste").Content("Paste").Items(pasteOptions); }).Add();148 }).Add();149 collection.Items(items =>150 {151 items.Type(RibbonItemType.Button).ButtonSettings(b => { b.IconCss("e-icons e-cut").Content("Cut"); }).Add();152 items.Type(RibbonItemType.Button).ButtonSettings(b => { b.IconCss("e-icons e-copy").Content("Copy"); }).Add();153 }).Add();154}).Add();155```156157### Pattern: Font Group (Row Orientation)158```cshtml159group.Header("Font").Orientation(ItemOrientation.Row).GroupIconCss("e-icons e-bold").Collections(collection =>160{161 collection.Items(items =>162 {163 items.Type(RibbonItemType.ComboBox).ComboBoxSettings(cb => { cb.DataSource(fontStyle).Index(3).AllowFiltering(true).Width("150px"); }).Add();164 items.Type(RibbonItemType.ComboBox).ComboBoxSettings(cb => { cb.DataSource(fontSize).Index(3).Width("65px"); }).Add();165 }).Add();166}).Add();167```168169### Pattern: Help Pane Template170```cshtml171@Html.EJS().Ribbon("ribbon").HelpPaneTemplate("#helpPaneTemplate").Tabs(...).Render()172173<script type="text/x-jsrender" id="helpPaneTemplate">174 <button class="action_btn"><span class="e-icons e-undo"></span> Undo</button>175 <button class="action_btn"><span class="e-icons e-redo"></span> Redo</button>176</script>177```178179---180181## Key Properties Reference182183| Property | Type | Description |184|---|---|---|185| `ActiveLayout` | `RibbonLayout` | `Classic` (default) or `Simplified` |186| `IsMinimized` | `bool` | Collapse ribbon to tab headers only |187| `HideLayoutSwitcher` | `bool` | Show/hide the layout toggle button |188| `EnableKeyTips` | `bool` | Enable Alt+Win/Command keytip navigation |189| `HelpPaneTemplate` | `string` | Selector for right-side help pane content |190| `LauncherIconCss` | `string` | Global launcher icon CSS class |191| `FileMenu` | `FileMenuSettings` | File menu configuration |192| `BackStageMenu` | `BackStageMenu` | Backstage view configuration |193| `ContextualTabs` | `List<RibbonContextualTab>` | On-demand contextual tab list |