Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

Create Ribbon

  • 2 minutes to read

Click the Create Ribbon Quick Actions item to generate the Scheduler’s ribbon UI. You can modify the generated XAML code.

WPFScheduler_SmartTag_CreateRibbon

Use the following technique to reduce the XAML code’s length.

Set the SchedulerControl.CommandBarStyle property to CommandBarStyle.Ribbon to display the integrated ribbon with all the available scheduler commands.

Use Bar Actions to customize the built-in Scheduler ribbon by adding an action to the SchedulerControl.RibbonActions collection. Refer to the following topic for more information: How to: Display the Integrated Ribbon for the Scheduler.

The code sample below contains the generated XAML:

<dxr:RibbonControl DockPanel.Dock="Top" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=RibbonControl}}" dxsch:SchedulerControl.Scheduler="{Binding ElementName=scheduler}">
    <dxr:RibbonDefaultPageCategory Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Categories_Default}}">
        <dxr:RibbonPage x:Name="Pages_Home" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Pages_Home}}">
            <dxr:RibbonPageGroup x:Name="Groups_Home_Appointment" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Home_Appointment}}">
                <dxb:BarButtonItem x:Name="Items_Home_Appointment_NewAppointment" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Appointment_NewAppointment}}"/>
                <dxb:BarButtonItem x:Name="Items_Home_Appointment_NewRecurringAppointment" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Appointment_NewRecurringAppointment}}"/>
            </dxr:RibbonPageGroup>
            <dxr:RibbonPageGroup x:Name="Groups_Home_Navigate" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Home_Navigate}}">
                <dxb:BarButtonItem x:Name="Items_Home_Navigate_Backward" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Navigate_Backward}}"/>
                <dxb:BarButtonItem x:Name="Items_Home_Navigate_Forward" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Navigate_Forward}}"/>
                <dxb:BarButtonItem x:Name="Items_Home_Navigate_GotoToday" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Navigate_GotoToday}}"/>
            </dxr:RibbonPageGroup>
            <dxr:RibbonPageGroup x:Name="Groups_Home_Arrange" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Home_Arrange}}">
                <dxb:BarLinkContainerItem x:Name="Items_Home_Arrange_Views" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Arrange_Views}}"/>
            </dxr:RibbonPageGroup>
            <dxr:RibbonPageGroup x:Name="Groups_Home_GroupBy" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Home_GroupBy}}">
                <dxb:BarCheckItem x:Name="Items_Home_GroupBy_GroupByNone" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_GroupBy_GroupByNone}}"/>
                <dxb:BarCheckItem x:Name="Items_Home_GroupBy_GroupByDate" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_GroupBy_GroupByDate}}"/>
                <dxb:BarCheckItem x:Name="Items_Home_GroupBy_GroupByResource" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_GroupBy_GroupByResource}}"/>
            </dxr:RibbonPageGroup>
            <dxr:RibbonPageGroup x:Name="Groups_Home_TimeScale" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Home_TimeScale}}">
                <dxb:BarSubItem x:Name="Items_Home_TimeScale_SwitchTimeScale" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_TimeScale_SwitchTimeScale}}"/>
                <dxb:BarEditItem x:Name="Items_Home_TimeScale_IntervalCount" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_TimeScale_IntervalCount}}"/>
                <dxb:BarSubItem x:Name="Items_Home_TimeScale_TimeScaleCaptions" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_TimeScale_ShowTimeScaleCaptions}}"/>
            </dxr:RibbonPageGroup>
            <dxr:RibbonPageGroup x:Name="Groups_Home_Layout" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Home_Layout}}">
                <dxb:BarCheckItem x:Name="Items_Home_Layout_ShowWorkTimeOnly" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Layout_ShowWorkTimeOnly}}"/>
                <dxb:BarSubItem x:Name="Items_Home_Layout_SwitchSnapToCells" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Layout_SwitchSnapToCells}}"/>
            </dxr:RibbonPageGroup>
            <dxr:RibbonPageGroup x:Name="Groups_Home_Window" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Home_Window}}">
                <dxb:BarButtonItem x:Name="Items_Home_Window_ShowRemindersWindow" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Home_Window_ShowRemindersWindow}}"/>
            </dxr:RibbonPageGroup>
        </dxr:RibbonPage>
    </dxr:RibbonDefaultPageCategory>
    <dxr:RibbonPageCategory x:Name="Categories_Appointment" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Categories_Appointment}}">
        <dxr:RibbonPage x:Name="Pages_Appointment" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Pages_Appointment}}">
            <dxr:RibbonPageGroup x:Name="Groups_Appointment_Actions" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Appointment_Actions}}">
                <dxb:BarButtonItem x:Name="Items_Appointment_Actions_Open" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Appointment_Actions_Open}}"/>
                <dxb:BarButtonItem x:Name="Items_Appointment_Actions_Delete" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Appointment_Actions_Delete}}"/>
            </dxr:RibbonPageGroup>
            <dxr:RibbonPageGroup x:Name="Groups_Appointment_Options" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Groups_Appointment_Options}}">
                <dxb:BarSubItem x:Name="Items_Appointment_Options_ShowTimeAs" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Appointment_Options_ShowTimeAs}}"/>
                <dxb:BarSubItem x:Name="Items_Appointment_Options_LabelAs" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Appointment_Options_LabelAs}}"/>
                <dxb:BarSubItem x:Name="Items_Appointment_Options_Reminder" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Appointment_Options_Reminder}}"/>
                <dxb:BarCheckItem x:Name="Items_Appointment_Options_Recurrence" Style="{DynamicResource {dxscht:SchedulerCommandBarThemeKey ResourceKey=Items_Appointment_Options_Recurrence}}"/>
            </dxr:RibbonPageGroup>
        </dxr:RibbonPage>
    </dxr:RibbonPageCategory>
</dxr:RibbonControl>