[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Collapse]WPF Controls
 [Expand]What's Installed
 [Expand].NET Core 3 Support
 [Expand]Common Concepts
 [Expand]MVVM Framework
 [Collapse]Controls and Libraries
  [Expand]Data Grid
  [Expand]Ribbon, Bars and Menu
  [Expand]Charts Suite
  [Expand]Pivot Grid
  [Expand]Rich Text Editor
  [Expand]Tree List
  [Expand]Gauge Controls
  [Expand]Map Control
  [Expand]Layout Management
  [Expand]Windows Modern UI
  [Expand]Data Editors
  [Expand]Navigation Controls
  [Expand]Spell Checker
  [Expand]Property Grid
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Gantt Control
  [Expand]Diagram Control
  [Expand]Windows and Utility Controls
   Dialogs, Notifications and Panels
  [Collapse]Scheduler (legacy)
   [Expand]Getting Started
    [Expand]Scheduler Elements
     Pop-up Menus
    [Expand]Data Binding
    [Expand]Supported Formats
    [Expand]Styles and Templates
     Time Zones
     Product Class Structure
     Scheduling Basics
   [Expand]Visual Elements
 [Expand]Scaffolding Wizard
  Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Pop-up Menus


You are viewing documentation for the legacy WPF Scheduler control. If you're starting a new project, we strongly recommend that you use a new control declared in the DevExpress.Xpf.Scheduling namespace. If you decide to upgrade an existing project in order to switch to the updated scheduler control, see the Migration Guidelines document.

The Scheduler has three types of context (pop-up) menus that enable an end-user to manage views, appointments and adjust time ruler settings. The SchedulerControl provides dedicated properties that allow you to customize context menus by adding or removing items. These properties return a BarManagerActionCollection object that provides multiple methods, used to manage menu items contained within a popup menu.

Expanded Context Menus Overview

Menu Type Description Image Property
Default Popup Menu This menu is shown when an end-user right-clicks Time Cells that do not contain any appointments. SchedulerControl.DefaultMenuCustomizations
Appointment Popup Menu This menu is shown when an end-user right-clicks a appointment. SchedulerControl.AppointmentMenuCustomizations
Time Ruler Popup Menu This menu is shown when an end-user right-clicks an time ruler. SchedulerControl.TimeRulerMenuCustomizations

Expanded Customizing Context Menus in XAML

  • Default Menu Item Names

    When customizing popup menus (for example, removing or moving default items), these menus and menu items are referred to by their names listed in SchedulerMenuItemName enumeration.

  • Adding and Moving Menu Items

    This example demonstrates how to add custom menu items to the Appointment Popup Menu of the SchedulerControl using the SchedulerControl.AppointmentMenuCustomizations property in XAML. Add a bar item (BarCheckItem, BarButtonItem or BarItemSeparator class instance) to the collection and specify item properties. To insert an item into a specific position, attach the BarItemLinkActionBase.ItemLinkIndex property.

  • Removing Menu Items

    This example demonstrates how to remove a specific item from the Default Popup Menu of the SchedulerControl using the SchedulerControl.DefaultMenuCustomizations property. Add the RemoveBarItemAndLinkAction class instance to the customizations collection, and specify the name of the bar item to delete.

Expanded Customizing Context Menus Dynamically

Handle the SchedulerControl.PopupMenuShowing event to customize context menus at runtime.

Is this topic helpful?​​​​​​​