Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]General Information
[Collapse]WinForms Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Build an Application
 [Expand]Controls and Libraries
 [Expand]Common Features
  Get More Help
 [Collapse]API Reference
  [Expand]DevExpress.DataAccess.UI.Design
  [Expand]DevExpress.DataAccess.UI.EntityFramework
  [Expand]DevExpress.DataAccess.UI.Excel
  [Expand]DevExpress.DataAccess.UI.Localization
  [Expand]DevExpress.DataAccess.UI.ObjectBinding
  [Expand]DevExpress.DataAccess.UI.Sql
  [Expand]DevExpress.DataAccess.UI.Wizard
  [Expand]DevExpress.DataAccess.UI.Wizard.Services
  [Expand]DevExpress.DataAccess.UI.Wizard.Views
  [Expand]DevExpress.DocumentView
  [Expand]DevExpress.DocumentView.Controls
  [Expand]DevExpress.LookAndFeel
  [Expand]DevExpress.LookAndFeel.Helpers
  [Expand]DevExpress.Skins
  [Expand]DevExpress.Snap
  [Expand]DevExpress.Snap.API.Native
  [Expand]DevExpress.Snap.Core
  [Expand]DevExpress.Snap.Core.API
  [Expand]DevExpress.Snap.Core.Fields
  [Expand]DevExpress.Snap.Core.Forms
  [Expand]DevExpress.Snap.Core.Options
  [Expand]DevExpress.Snap.Core.Services
  [Expand]DevExpress.Snap.Extensions
  [Expand]DevExpress.Snap.Extensions.Localization
  [Expand]DevExpress.Snap.Extensions.UI
  [Expand]DevExpress.Snap.Localization
  [Expand]DevExpress.Snap.Options
  [Expand]DevExpress.Snap.Services
  [Expand]DevExpress.Utils
  [Expand]DevExpress.Utils.Animation
  [Expand]DevExpress.Utils.Controls
  [Expand]DevExpress.Utils.Drawing
  [Expand]DevExpress.Utils.Menu
  [Expand]DevExpress.Utils.Taskbar
  [Expand]DevExpress.Utils.Taskbar.Core
  [Expand]DevExpress.Utils.UI.Localization
  [Expand]DevExpress.Utils.VisualEffects
  [Expand]DevExpress.Utils.Win
  [Expand]DevExpress.XtraBars
  [Expand]DevExpress.XtraBars.Alerter
  [Expand]DevExpress.XtraBars.Docking
  [Expand]DevExpress.XtraBars.Docking2010
  [Expand]DevExpress.XtraBars.Docking2010.Customization
  [Expand]DevExpress.XtraBars.Docking2010.Views
  [Expand]DevExpress.XtraBars.Docking2010.Views.NativeMdi
  [Expand]DevExpress.XtraBars.Docking2010.Views.Tabbed
  [Expand]DevExpress.XtraBars.Docking2010.Views.Widget
  [Expand]DevExpress.XtraBars.Docking2010.Views.WindowsUI
  [Expand]DevExpress.XtraBars.Localization
  [Expand]DevExpress.XtraBars.Navigation
  [Collapse]DevExpress.XtraBars.Ribbon
   [Expand]ApplicationMenu Class
   [Expand]AppMenuFileLabel Class
   [Expand]BackstageViewButtonItem Class
   [Expand]BackstageViewClientControl Class
   [Expand]BackstageViewControl Class
   [Expand]BackstageViewControlItemCollecton Class
   [Expand]BackstageViewItem Class
   [Expand]BackstageViewItemBase Class
   [Expand]BackstageViewItemEventArgs Class
    BackstageViewItemEventHandler Delegate
   [Expand]BackstageViewItemSeparator Class
    BackstageViewShowRibbonItems Enumeration
   [Expand]BackstageViewTabItem Class
   [Expand]GalleryControl Class
   [Expand]GalleryDropDown Class
   [Expand]GalleryFilterMenuClickEventArgs Class
   [Expand]GalleryFilterMenuEventArgs Class
   [Expand]GalleryItem Class
   [Expand]GalleryItemClickEventArgs Class
    GalleryItemClickEventHandler Delegate
   [Expand]GalleryItemCollection Class
   [Expand]GalleryItemCustomDrawEventArgs Class
    GalleryItemCustomDrawEventHandler Delegate
   [Expand]GalleryItemEventArgs Class
   [Expand]GalleryItemGroup Class
    GalleryItemGroupCaptionAlignment Enumeration
   [Expand]GalleryItemGroupCollection Class
    GallerySizeMode Enumeration
   [Expand]ImageGalleryFilterMenu Class
    ItemImageLocation Enumeration
   [Expand]RadialMenu Class
   [Expand]RecentButtonItem Class
   [Expand]RecentControlContainerItem Class
   [Expand]RecentHyperlinkItem Class
   [Expand]RecentItemBase Class
   [Expand]RecentItemControl Class
   [Expand]RecentItemEventArgs Class
   [Expand]RecentLabelItem Class
   [Expand]RecentPanelBase Class
   [Expand]RecentPinItem Class
   [Expand]RecentSeparatorItem Class
   [Expand]RecentStackPanel Class
   [Expand]RecentTabItem Class
   [Expand]RecentTextGlyphItemBase Class
   [Expand]RibbonBarItems Class
   [Collapse]RibbonControl Class
     RibbonControl Members
     RibbonControl Constructor
    [Expand]RibbonControl Properties
    [Expand]RibbonControl Events
    [Expand]RibbonControl Methods
    RibbonControlColorScheme Enumeration
    RibbonControlStyle Enumeration
   [Expand]RibbonForm Class
    RibbonItemStyles Enumeration
    RibbonMdiMergeStyle Enumeration
   [Expand]RibbonMiniToolbar Class
   [Expand]RibbonMiniToolbarCollection Class
   [Expand]RibbonMiniToolbarOpacityOptions Class
   [Expand]RibbonOptionsTouch Class
   [Expand]RibbonPage Class
   [Expand]RibbonPageCategory Class
    RibbonPageCategoryAlignment Enumeration
   [Expand]RibbonPageCategoryCollection Class
   [Expand]RibbonPageCollection Class
   [Expand]RibbonPageGroup Class
   [Expand]RibbonPageGroupCollection Class
   [Expand]RibbonPageGroupEventArgs Class
    RibbonPageGroupEventHandler Delegate
    RibbonPageGroupItemsLayout Enumeration
   [Expand]RibbonQuickAccessToolbar Class
    RibbonQuickAccessToolbarLocation Enumeration
   [Expand]RibbonStatusBar Class
    ShowPageHeadersMode Enumeration
  [Expand]DevExpress.XtraBars.Ribbon.Gallery
  [Expand]DevExpress.XtraBars.Ribbon.ViewInfo
  [Expand]DevExpress.XtraBars.ToastNotifications
  [Expand]DevExpress.XtraBars.Utils
  [Expand]DevExpress.XtraBars.WinRTLiveTiles
  [Expand]DevExpress.XtraCharts
  [Expand]DevExpress.XtraCharts.Designer
  [Expand]DevExpress.XtraCharts.Wizard
  [Expand]DevExpress.XtraDataLayout
  [Expand]DevExpress.XtraDiagram
  [Expand]DevExpress.XtraDiagram.Options
  [Expand]DevExpress.XtraEditors
  [Expand]DevExpress.XtraEditors.ButtonPanel
  [Expand]DevExpress.XtraEditors.Calendar
  [Expand]DevExpress.XtraEditors.Camera
  [Expand]DevExpress.XtraEditors.Container
  [Expand]DevExpress.XtraEditors.Controls
  [Expand]DevExpress.XtraEditors.CustomEditor
  [Expand]DevExpress.XtraEditors.DXErrorProvider
  [Expand]DevExpress.XtraEditors.Filtering
  [Expand]DevExpress.XtraEditors.Mask
  [Expand]DevExpress.XtraEditors.Persistent
  [Expand]DevExpress.XtraEditors.Repository
  [Expand]DevExpress.XtraEditors.ViewInfo
  [Expand]DevExpress.XtraFilterEditor
  [Expand]DevExpress.XtraGauges.Presets.Styles
  [Expand]DevExpress.XtraGauges.Win
  [Expand]DevExpress.XtraGauges.Win.Base
  [Expand]DevExpress.XtraGauges.Win.Gauges.Circular
  [Expand]DevExpress.XtraGauges.Win.Gauges.Digital
  [Expand]DevExpress.XtraGauges.Win.Gauges.Linear
  [Expand]DevExpress.XtraGauges.Win.Gauges.State
  [Expand]DevExpress.XtraGrid
  [Expand]DevExpress.XtraGrid.Columns
  [Expand]DevExpress.XtraGrid.EditForm
  [Expand]DevExpress.XtraGrid.FilterEditor
  [Expand]DevExpress.XtraGrid.Localization
  [Expand]DevExpress.XtraGrid.Views.BandedGrid
  [Expand]DevExpress.XtraGrid.Views.BandedGrid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Base
  [Expand]DevExpress.XtraGrid.Views.Base.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Card
  [Expand]DevExpress.XtraGrid.Views.Card.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Grid
  [Expand]DevExpress.XtraGrid.Views.Grid.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Layout
  [Expand]DevExpress.XtraGrid.Views.Layout.Events
  [Expand]DevExpress.XtraGrid.Views.Layout.ViewInfo
  [Expand]DevExpress.XtraGrid.Views.Printing
  [Expand]DevExpress.XtraGrid.Views.Tile
  [Expand]DevExpress.XtraGrid.Views.WinExplorer
  [Expand]DevExpress.XtraGrid.WinExplorer
  [Expand]DevExpress.XtraLayout
  [Expand]DevExpress.XtraLayout.Customization
  [Expand]DevExpress.XtraLayout.HitInfo
  [Expand]DevExpress.XtraLayout.Localization
  [Expand]DevExpress.XtraLayout.Utils
  [Expand]DevExpress.XtraMap
  [Expand]DevExpress.XtraMap.Printing
  [Expand]DevExpress.XtraNavBar
  [Expand]DevExpress.XtraNavBar.ViewInfo
  [Expand]DevExpress.XtraPdfViewer
  [Expand]DevExpress.XtraPdfViewer.Commands
  [Expand]DevExpress.XtraPdfViewer.Localization
  [Expand]DevExpress.XtraPivotGrid
  [Expand]DevExpress.XtraPivotGrid.Data
  [Expand]DevExpress.XtraPrinting
  [Expand]DevExpress.XtraPrinting.Control
  [Expand]DevExpress.XtraPrinting.Preview
  [Expand]DevExpress.XtraPrintingLinks
  [Expand]DevExpress.XtraReports.UI
  [Expand]DevExpress.XtraRichEdit
  [Expand]DevExpress.XtraRichEdit.Commands
  [Expand]DevExpress.XtraRichEdit.Export
  [Expand]DevExpress.XtraRichEdit.Import
  [Expand]DevExpress.XtraRichEdit.Localization
  [Expand]DevExpress.XtraRichEdit.Menu
  [Expand]DevExpress.XtraScheduler
  [Expand]DevExpress.XtraScheduler.Drawing
  [Expand]DevExpress.XtraScheduler.Printing
  [Expand]DevExpress.XtraScheduler.Reporting
  [Expand]DevExpress.XtraScheduler.Reporting.UI
  [Expand]DevExpress.XtraScheduler.Services
  [Expand]DevExpress.XtraScheduler.Services.Implementation
  [Expand]DevExpress.XtraScheduler.UI
  [Expand]DevExpress.XtraSpellChecker
  [Expand]DevExpress.XtraSpellChecker.Localization
  [Expand]DevExpress.XtraSplashForm
  [Expand]DevExpress.XtraSplashScreen
  [Expand]DevExpress.XtraSpreadsheet
  [Expand]DevExpress.XtraSpreadsheet.Services
  [Expand]DevExpress.XtraTab
  [Expand]DevExpress.XtraTab.Buttons
  [Expand]DevExpress.XtraTab.ViewInfo
  [Expand]DevExpress.XtraTabbedMdi
  [Expand]DevExpress.XtraToolbox
  [Expand]DevExpress.XtraTreeList
  [Expand]DevExpress.XtraTreeList.Columns
  [Expand]DevExpress.XtraTreeList.Data
  [Expand]DevExpress.XtraTreeList.Localization
  [Expand]DevExpress.XtraTreeList.Menu
  [Expand]DevExpress.XtraTreeList.Nodes
  [Expand]DevExpress.XtraTreeList.Nodes.Operations
  [Expand]DevExpress.XtraTreeList.StyleFormatConditions
  [Expand]DevExpress.XtraTreeMap
  [Expand]DevExpress.XtraVerticalGrid
  [Expand]DevExpress.XtraVerticalGrid.Events
  [Expand]DevExpress.XtraVerticalGrid.Localization
  [Expand]DevExpress.XtraVerticalGrid.Rows
  [Expand]DevExpress.XtraWaitForm
  [Expand]DevExpress.XtraWizard
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

RibbonControl Class

Allows you to create a Ribbon toolbar with commands grouped into categories, pages and page groups. See Ribbon.

Namespace:DevExpress.XtraBars.Ribbon
Assembly:DevExpress.XtraBars.v17.2.dll

Expanded Syntax

Expanded Remarks

The Ribbon Control displays various commands, generally represented as buttons, by categorizing them into pages and page groups. The following screenshot shows a sample Ribbon Control which consists of two pages ("Home" and "Alternative Page"). The first page contains two groups ("File" and "Edit"), and each group contains specific commands.

Structurally, a Ribbon Control contains one or more pages which are displayed as tabs. The control's pages, which are represented by RibbonPage objects, can be accessed with the Pages collection. You can use the Pages property to add, remove and access specific pages and customize their settings.

A Ribbon page is divided into groups which display specific commands. Page groups (RibbonPageGroup class objects) can be accessed from the RibbonPage.Groups property.

Each page group can display various elements: buttons, static text, submenus, editors, etc. To add a specific element to the group, create a corresponding bar item and add it to the RibbonPageGroup.ItemLinks collection. For information on bar items and bar item links, refer to Items and Item Links.

Note

If you create bar items in code, ensure the following:

  1. All bar items are added to the Items collection. Otherwise, bar items may not function properly (for instance, a submenu may not be displayed).

    The following list shows the correct ways to create bar items while adding them to the Items collection.

  2. All bar items have their BarItem.Id properties initialized to unique values. This ensures correct functioning of the bar item (de)serialization mechanism.

    The BarItem.Id properties can be initialized with the BarManager.GetNewItemId method accessible from the Manager object.

The Quick Access Toolbar displayed by default at the top of the Ribbon Control allows you to display the most used commands. Use the ToolbarLocation property to control the toolbar's position and visibility. The Toolbar property permits you to access the toolbar and customize its contents.

For more information on Ribbon elements, see Ribbon Control.

Expanded Popup Menus for External Controls

When you place a RibbonControl on a form at design time, all controls publish the PopupContextMenu extender property (its caption in the Properties window looks like 'PopupContextMenu on ribbonControl1'). You can use this property to assign a PopupMenu or RadialMenu menu for this control. This menu will be displayed when right-clicking the control at runtime.

To assign a popup menu for a control in code, use the SetPopupContextMenu method.
Note

Specific complex controls such as Grid Control and Tree List do not publish the PopupContextMenu property, as these controls support different context menus for different visual elements. See the help documentation on these products to learn how to work with context menus in these controls.

Expanded Notes

Note

Using regular bars (a BarManager component) and a RibbonControl within the same form/user control is not recommended, as the Bar Manager and Ribbon Control components may conflict with each other. Use either a Bar Manager or a Ribbon Control within a single form/user control.

Expanded Example

This example demonstrates how to create a RibbonControl with one page ("Home") and two page groups ("File" and "File 2").

Ribbon commands are called bar items, as they are all derived from the BarItem class. This example creates three bar items - the Open, Close and Print buttons, encapsulated by the BarButtonItem objects. The Close and Print buttons are only added to the first group, while the Open button is added to both of the groups.

When bar items are created in code, ensure the following:
  1. All bar items are added to the Items collection.

    This example demonstrates three ways of creating bar items while adding them to the Items collection.

  2. All bar items have their BarItem.Id properties initialized to unique values. This ensures correct functioning of the bar item (de)serialization mechanism.

    The BarItem.Id properties can be initialized with the BarManager.GetNewItemId method accessible from the Manager object. See the code below.

Expanded Inheritance Hierarchy

System.Object
    System.MarshalByRefObject
       System.ComponentModel.Component
          System.Windows.Forms.Control
             ControlBase
                RibbonControl

Expanded See Also

How would you rate this topic?​​​​​​​