windowsforms-devexpress-dot-xtrascheduler-fab6b743.md
Represents a popup (context) menu of the Scheduler.
Namespace : DevExpress.XtraScheduler
Assembly : DevExpress.XtraScheduler.v25.2.dll
NuGet Package : DevExpress.Win.Scheduler
public class SchedulerPopupMenu :
CommandPopupMenu<SchedulerMenuItemId>
Public Class SchedulerPopupMenu
Inherits CommandPopupMenu(Of SchedulerMenuItemId)
The following members return SchedulerPopupMenu objects:
SchedulerPopupMenu objects are used to represent a context menu which is usually displayed when a user right-clicks a SchedulerControl. Popup menu items depend on the area of the Scheduler which was clicked, however, it’s also possible to customize these items on the SchedulerControl.PopupMenuShowing event.
Note
The list of standard and check menu items used in the Scheduler is represented by SchedulerMenuItemId enumeration members.
This example demonstrates how to customize the SchedulerControl‘s popup menus (the SchedulerMenuItemId.DefaultMenu in this case). To change particular items in a popup menu handle the SchedulerControl.PopupMenuShowing event of a Scheduler Control.
using DevExpress.XtraScheduler;
// ...
private void schedulerControl1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
// Check if it's the default menu of a Scheduler.
if (e.Menu.Id == SchedulerMenuItemId.DefaultMenu)
{
// Disable the "New Recurring Appointment" menu item.
e.Menu.DisableMenuItem(SchedulerMenuItemId.NewRecurringAppointment);
// Hide the "New Recurring Event" menu item.
e.Menu.RemoveMenuItem(SchedulerMenuItemId.NewRecurringEvent);
// Enable the "Go To Today" menu item.
e.Menu.EnableMenuItem(SchedulerMenuItemId.GotoToday);
// Find the "New Appointment" menu item and rename it.
SchedulerMenuItem item = e.Menu.GetMenuItemById(SchedulerMenuItemId.NewAppointment);
if (item != null) item.Caption = "&New Event";
}
// Check if it's the appointment menu.
if(e.Menu.Id == SchedulerMenuItemId.AppointmentMenu) {
e.Menu.RemoveMenuItem(SchedulerMenuItemId.LabelSubMenu);
e.Menu.RemoveMenuItem(SchedulerMenuItemId.StatusSubMenu);
}
}
Imports DevExpress.XtraScheduler
' ...
Private Sub schedulerControl1_PopupMenuShowing(ByVal sender As Object, ByVal e As PopupMenuShowingEventArgs)
' Check if it's the default menu of a Scheduler.
If e.Menu.Id = SchedulerMenuItemId.DefaultMenu Then
' Disable the "New Recurring Appointment" menu item.
e.Menu.DisableMenuItem(SchedulerMenuItemId.NewRecurringAppointment)
' Hide the "New Recurring Event" menu item.
e.Menu.RemoveMenuItem(SchedulerMenuItemId.NewRecurringEvent)
' Enable the "Go To Today" menu item.
e.Menu.EnableMenuItem(SchedulerMenuItemId.GotoToday)
' Find the "New Appointment" menu item and rename it.
Dim item As SchedulerMenuItem = e.Menu.GetMenuItemById(SchedulerMenuItemId.NewAppointment)
If Not item Is Nothing Then
item.Caption = "&New Event"
End If
End If
' Check if it's the appointment menu.
If e.Menu.Id = SchedulerMenuItemId.AppointmentMenu Then
e.Menu.RemoveMenuItem(SchedulerMenuItemId.LabelSubMenu)
e.Menu.RemoveMenuItem(SchedulerMenuItemId.StatusSubMenu)
End If
End Sub
Object DXMenuItem DXSubMenuItem DXPopupMenu CommandPopupMenu<SchedulerMenuItemId> SchedulerPopupMenu
See Also