Skip to main content
A newer version of this page is available. .

RibbonPage Class

Represents a Ribbon Page within a RibbonControl.

Namespace: DevExpress.Xpf.Ribbon

Assembly: DevExpress.Xpf.Ribbon.v19.1.dll

Declaration

public class RibbonPage :
    BaseRibbonItem,
    ICloneable,
    IMultipleElementRegistratorSupport,
    IBarNameScopeSupport,
    IInputElement,
    IBarManagerControllerAction,
    IControllerAction,
    IAltitudeSupport,
    IRibbonMergingSupport,
    ILogicalChildrenContainer

Remarks

This class represents a Ribbon Page within a RibbonControl.

Ribbon pages can belong to either the default page category or to a custom page category. Pages that belong to the default page category are regular pages, and they should be designed to contain commands that are always visible during the application run. Pages that belong to custom page categories are intended to display context-dependant commands.

To add pages to a page category (default or custom), first, create a category object and then add the pages to this category’s Pages collection. The default and custom page category are represented by the RibbonDefaultPageCategory and RibbonPageCategory classes, respectively.

Ribbon pages are containers for RibbonPageGroup objects. Use the RibbonPage.Groups property to specify the page groups to display in the page.

To select (activate) a specific page, use RibbonPage.IsSelected or RibbonControl.SelectedPage.

Example

This example shows how to create a Default Page Category containing one “Home” page. The “Home” page contains three page groups (“File”, “Edit” and “Format”), each displaying specific commands.

The following image shows the result:

RibbonControl_Ex

<dxr:RibbonDefaultPageCategory>
    <dxr:RibbonPage Caption="Home">
        <dxr:RibbonPageGroup Name="pgFile" Caption="File" 
                             ShowCaptionButton="True"
                             CaptionButtonClick="groupFile_CaptionButtonClick"
                             >
            <dxb:BarButtonItem Name="bNew" Content="New" 
                   Glyph="{dxc:DXImage Image=New_16x16.png}" 
                   LargeGlyph="{dxc:DXImage Image=New_32x32.png}"  
                   Description="Creates a new document."
                   Hint="Creates a blank document."
                   RibbonStyle="Large"/>

            <dxb:BarButtonItem Name="bOpen" Content="Open" 
                   Glyph="{dxc:DXImage Image=Open_16x16.png}" 
                   LargeGlyph="{dxc:DXImage Image=Open_32x32.png}" 
                   Description="Opens a file."
                   Hint="Opens a file."
                   RibbonStyle="SmallWithText"/>

            <dxb:BarButtonItem Name="bClose" Content="Close" 
                   Glyph="{dxc:DXImage Image=Close_16x16.png}" 
                   LargeGlyph="{dxc:DXImage Image=Close_32x32.png}"
                   Hint="Closes the current document"
                   RibbonStyle="SmallWithText"/>

            <dxb:BarButtonItem Name="bPrint" Content="Print" 
                   Glyph="{dxc:DXImage Image=Print_16x16.png}" 
                   LargeGlyph="{dxc:DXImage Image=Print_32x32.png}"  
                   Description="Prints the document."
                   Hint="Prints the document." 
                   RibbonStyle="SmallWithText"/>

            <dxb:BarItemLinkSeparator/>

            <dxb:BarSplitButtonItem Name="sbSave" Content="Save" 
                        Glyph="{dxc:DXImage Image=Save_16x16.png}" 
                        LargeGlyph="{dxc:DXImage Image=Save_32x32.png}" 
                        RibbonStyle="Large">
                <dxb:BarSplitButtonItem.PopupControl >
                    <dxb:PopupMenu>
                        <dxb:BarButtonItem Name="bSave" Content="Save" 
                            Glyph="{dxc:DXImage Image=Save_16x16.png}" 
                            LargeGlyph="{dxc:DXImage Image=Save_32x32.png}"  
                            Description="Saves the document."
                            Hint="Saves the document."/>
                        <dxb:BarButtonItem Name="bSaveAs" Content="Save As..." 
                            Glyph="{dxc:DXImage Image=SaveDialog_16x16.png}" 
                            LargeGlyph="{dxc:DXImage Image=SaveDialog_32x32.png}" 
                            Description="Save Document As..."
                            Hint="Save Document As..."/>
                    </dxb:PopupMenu>
                </dxb:BarSplitButtonItem.PopupControl>
            </dxb:BarSplitButtonItem>


        </dxr:RibbonPageGroup>
        <dxr:RibbonPageGroup Caption="Edit" ShowCaptionButton="True" CaptionButtonClick="groupEdit_CaptionButtonClick">
            <dxb:BarButtonItem Name="bPaste" Content="Paste" 
                   Glyph="{dxc:DXImage Image=Paste_16x16.png}" 
                   LargeGlyph="{dxc:DXImage Image=Paste_32x32.png}" RibbonStyle="Large"/>

            <dxb:BarButtonItem Name="bCut" Content="Cut" 
                   Glyph="{dxc:DXImage Image=Cut_16x16.png}"  RibbonStyle="SmallWithText"/>
            <dxb:BarButtonItem Name="bCopy" Content="Copy" 
                   Glyph="{dxc:DXImage Image=Copy_16x16.png}"  RibbonStyle="SmallWithText"/>
            <dxb:BarButtonItem Name="bClear" Content="Clear" 
                   Glyph="{dxc:DXImage Image=Delete_16x16.png}"  RibbonStyle="SmallWithText"/>

        </dxr:RibbonPageGroup>

        <dxr:RibbonPageGroup Caption="Format" ShowCaptionButton="False">
            <!--region #BarButtonGroup-->
            <dxr:BarButtonGroup Name="bgFontShape" RibbonStyle="SmallWithoutText">
                <dxb:BarCheckItem Name="bBold" Content="Bold" 
                  Glyph="{dxc:DXImage Image=Bold_16x16.png}" />
                <dxb:BarCheckItem Name="bItalic" Content="Italic" 
                  Glyph="{dxc:DXImage Image=Italic_16x16.png}" />
                <dxb:BarCheckItem Name="bUnderline" Content="Underline" 
                  Glyph="{dxc:DXImage Image=Underline_16x16.png}" />
            </dxr:BarButtonGroup>
            <!--endregion #BarButtonGroup-->

        </dxr:RibbonPageGroup>
    </dxr:RibbonPage>
</dxr:RibbonDefaultPageCategory>

The following code snippets (auto-collected from DevExpress Examples) contain references to the RibbonPage class.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

Implements

Inheritance

Object
DispatcherObject
DependencyObject
ContentElement
FrameworkContentElement
DevExpress.Xpf.Ribbon.Internal.BaseRibbonItem
RibbonPage
See Also